{
 "cells": [
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-02-07T11:40:46.746425Z",
     "start_time": "2025-02-07T11:40:43.958763Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 导入库\n",
    "import matplotlib as mpl\n",
    "# Matplotlib 绘制的图形会直接嵌入到 Notebook 的输出单元格中，而不是弹出一个独立的窗口\n",
    "%matplotlib inline\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import sklearn\n",
    "import pandas as pd\n",
    "\n",
    "# os库提供了一种使用操作系统相关功能的便捷方式，允许与操作系统进行交互\n",
    "import os\n",
    "\n",
    "# sys库主要用于处理Python运行时的环境相关信息以及与解释器的交互\n",
    "import sys\n",
    "import time\n",
    "\n",
    "# tqdm库是一个快速，可扩展的Python进度条，可以在 Python 长循环中添加一个进度提示信息，用户只需要封装任意的迭代器 tqdm(iterator)，即可获得一个进度条显示迭代进度。\n",
    "from tqdm.auto import tqdm\n",
    "import torch\n",
    "\n",
    "# torch.nn是PyTorch中用于构建神经网络的模块\n",
    "import torch.nn as nn\n",
    "\n",
    "# torch.nn.functional是PyTorch中包含了神经网络的一些常用函数\n",
    "import torch.nn.functional as F\n",
    "\n",
    "print(sys.version_info)\n",
    "for module in mpl, np, pd, sklearn, torch:\n",
    "    print(module.__name__, module.__version__)\n",
    "\n",
    "device = torch.device(\"cuda:0\") if torch.cuda.is_available() else torch.device(\"cpu\")\n",
    "print(device)\n"
   ],
   "id": "e8e709a5a23baf53",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "sys.version_info(major=3, minor=12, micro=3, releaselevel='final', serial=0)\n",
      "matplotlib 3.10.0\n",
      "numpy 1.26.4\n",
      "pandas 2.2.3\n",
      "sklearn 1.6.0\n",
      "torch 2.3.1+cu121\n",
      "cuda:0\n"
     ]
    }
   ],
   "execution_count": 1
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "# 数据准备",
   "id": "74b8be8531fe998c"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-02-07T11:40:52.322533Z",
     "start_time": "2025-02-07T11:40:52.246016Z"
    }
   },
   "cell_type": "code",
   "source": [
    "from sklearn.datasets import fetch_california_housing\n",
    "\n",
    "housing = fetch_california_housing(data_home='data')\n",
    "print(housing.DESCR)\n",
    "print(housing.data.shape)\n",
    "print(housing.target.shape)"
   ],
   "id": "c665e46d270be474",
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      ".. _california_housing_dataset:\n",
      "\n",
      "California Housing dataset\n",
      "--------------------------\n",
      "\n",
      "**Data Set Characteristics:**\n",
      "\n",
      ":Number of Instances: 20640\n",
      "\n",
      ":Number of Attributes: 8 numeric, predictive attributes and the target\n",
      "\n",
      ":Attribute Information:\n",
      "    - MedInc        median income in block group\n",
      "    - HouseAge      median house age in block group\n",
      "    - AveRooms      average number of rooms per household\n",
      "    - AveBedrms     average number of bedrooms per household\n",
      "    - Population    block group population\n",
      "    - AveOccup      average number of household members\n",
      "    - Latitude      block group latitude\n",
      "    - Longitude     block group longitude\n",
      "\n",
      ":Missing Attribute Values: None\n",
      "\n",
      "This dataset was obtained from the StatLib repository.\n",
      "https://www.dcc.fc.up.pt/~ltorgo/Regression/cal_housing.html\n",
      "\n",
      "The target variable is the median house value for California districts,\n",
      "expressed in hundreds of thousands of dollars ($100,000).\n",
      "\n",
      "This dataset was derived from the 1990 U.S. census, using one row per census\n",
      "block group. A block group is the smallest geographical unit for which the U.S.\n",
      "Census Bureau publishes sample data (a block group typically has a population\n",
      "of 600 to 3,000 people).\n",
      "\n",
      "A household is a group of people residing within a home. Since the average\n",
      "number of rooms and bedrooms in this dataset are provided per household, these\n",
      "columns may take surprisingly large values for block groups with few households\n",
      "and many empty houses, such as vacation resorts.\n",
      "\n",
      "It can be downloaded/loaded using the\n",
      ":func:`sklearn.datasets.fetch_california_housing` function.\n",
      "\n",
      ".. rubric:: References\n",
      "\n",
      "- Pace, R. Kelley and Ronald Barry, Sparse Spatial Autoregressions,\n",
      "  Statistics and Probability Letters, 33 (1997) 291-297\n",
      "\n",
      "(20640, 8)\n",
      "(20640,)\n"
     ]
    }
   ],
   "execution_count": 2
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-02-07T11:40:53.018076Z",
     "start_time": "2025-02-07T11:40:52.914562Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# train_test_split 是用于将数据集随机拆分为训练集和测试集的工具\n",
    "from sklearn.model_selection import train_test_split\n",
    "\n",
    "# 将完整数据集 housing.data 和对应的标签 housing.target 拆分为训练集（x_train_all 和 y_train_all）和测试集（x_test 和 y_test）\n",
    "#保留一部分数据作为测试集，用于最终评估模型的性能\n",
    "x_train_all, x_test, y_train_all, y_test = train_test_split(\n",
    "    housing.data, housing.target, random_state=7)\n",
    "\n",
    "# 将训练集 x_train_all 和 y_train_all 进一步拆分为训练集（x_train 和 y_train）和验证集（x_valid 和 y_valid）\n",
    "# 验证集用于在训练过程中评估模型性能，调整超参数，防止过拟合\n",
    "x_train, x_valid, y_train, y_valid = train_test_split(\n",
    "    x_train_all, y_train_all, random_state=11)\n",
    "\n",
    "dataset_maps = {\n",
    "    \"train\": [x_train, y_train],  #训练集\n",
    "    \"valid\": [x_valid, y_valid],  #验证集\n",
    "    \"test\": [x_test, y_test],  #测试集\n",
    "}  #把3个数据集都放到字典中"
   ],
   "id": "547377f583af5006",
   "outputs": [],
   "execution_count": 3
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-02-07T11:40:53.406874Z",
     "start_time": "2025-02-07T11:40:53.400763Z"
    }
   },
   "cell_type": "code",
   "source": [
    "from sklearn.preprocessing import StandardScaler\n",
    "\n",
    "scaler = StandardScaler()  #标准化\n",
    "\n",
    "# fit 方法：计算数据的统计量（如均值、标准差等）或学习数据的特征（如 PCA 的主成分），但不对数据进行转换。\n",
    "# transform 方法：使用 fit 方法学习到的统计量或特征对数据进行转换。\n",
    "# fit_transform 方法：先调用 fit 方法学习统计量或特征，然后调用 transform 方法对数据进行转换。\n",
    "scaler.fit(x_train)"
   ],
   "id": "4251a3d534078d17",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "StandardScaler()"
      ],
      "text/html": [
       "<style>#sk-container-id-1 {\n",
       "  /* Definition of color scheme common for light and dark mode */\n",
       "  --sklearn-color-text: #000;\n",
       "  --sklearn-color-text-muted: #666;\n",
       "  --sklearn-color-line: gray;\n",
       "  /* Definition of color scheme for unfitted estimators */\n",
       "  --sklearn-color-unfitted-level-0: #fff5e6;\n",
       "  --sklearn-color-unfitted-level-1: #f6e4d2;\n",
       "  --sklearn-color-unfitted-level-2: #ffe0b3;\n",
       "  --sklearn-color-unfitted-level-3: chocolate;\n",
       "  /* Definition of color scheme for fitted estimators */\n",
       "  --sklearn-color-fitted-level-0: #f0f8ff;\n",
       "  --sklearn-color-fitted-level-1: #d4ebff;\n",
       "  --sklearn-color-fitted-level-2: #b3dbfd;\n",
       "  --sklearn-color-fitted-level-3: cornflowerblue;\n",
       "\n",
       "  /* Specific color for light theme */\n",
       "  --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
       "  --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n",
       "  --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
       "  --sklearn-color-icon: #696969;\n",
       "\n",
       "  @media (prefers-color-scheme: dark) {\n",
       "    /* Redefinition of color scheme for dark theme */\n",
       "    --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
       "    --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n",
       "    --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
       "    --sklearn-color-icon: #878787;\n",
       "  }\n",
       "}\n",
       "\n",
       "#sk-container-id-1 {\n",
       "  color: var(--sklearn-color-text);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 pre {\n",
       "  padding: 0;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 input.sk-hidden--visually {\n",
       "  border: 0;\n",
       "  clip: rect(1px 1px 1px 1px);\n",
       "  clip: rect(1px, 1px, 1px, 1px);\n",
       "  height: 1px;\n",
       "  margin: -1px;\n",
       "  overflow: hidden;\n",
       "  padding: 0;\n",
       "  position: absolute;\n",
       "  width: 1px;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-dashed-wrapped {\n",
       "  border: 1px dashed var(--sklearn-color-line);\n",
       "  margin: 0 0.4em 0.5em 0.4em;\n",
       "  box-sizing: border-box;\n",
       "  padding-bottom: 0.4em;\n",
       "  background-color: var(--sklearn-color-background);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-container {\n",
       "  /* jupyter's `normalize.less` sets `[hidden] { display: none; }`\n",
       "     but bootstrap.min.css set `[hidden] { display: none !important; }`\n",
       "     so we also need the `!important` here to be able to override the\n",
       "     default hidden behavior on the sphinx rendered scikit-learn.org.\n",
       "     See: https://github.com/scikit-learn/scikit-learn/issues/21755 */\n",
       "  display: inline-block !important;\n",
       "  position: relative;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-text-repr-fallback {\n",
       "  display: none;\n",
       "}\n",
       "\n",
       "div.sk-parallel-item,\n",
       "div.sk-serial,\n",
       "div.sk-item {\n",
       "  /* draw centered vertical line to link estimators */\n",
       "  background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n",
       "  background-size: 2px 100%;\n",
       "  background-repeat: no-repeat;\n",
       "  background-position: center center;\n",
       "}\n",
       "\n",
       "/* Parallel-specific style estimator block */\n",
       "\n",
       "#sk-container-id-1 div.sk-parallel-item::after {\n",
       "  content: \"\";\n",
       "  width: 100%;\n",
       "  border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n",
       "  flex-grow: 1;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-parallel {\n",
       "  display: flex;\n",
       "  align-items: stretch;\n",
       "  justify-content: center;\n",
       "  background-color: var(--sklearn-color-background);\n",
       "  position: relative;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-parallel-item {\n",
       "  display: flex;\n",
       "  flex-direction: column;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-parallel-item:first-child::after {\n",
       "  align-self: flex-end;\n",
       "  width: 50%;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-parallel-item:last-child::after {\n",
       "  align-self: flex-start;\n",
       "  width: 50%;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-parallel-item:only-child::after {\n",
       "  width: 0;\n",
       "}\n",
       "\n",
       "/* Serial-specific style estimator block */\n",
       "\n",
       "#sk-container-id-1 div.sk-serial {\n",
       "  display: flex;\n",
       "  flex-direction: column;\n",
       "  align-items: center;\n",
       "  background-color: var(--sklearn-color-background);\n",
       "  padding-right: 1em;\n",
       "  padding-left: 1em;\n",
       "}\n",
       "\n",
       "\n",
       "/* Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n",
       "clickable and can be expanded/collapsed.\n",
       "- Pipeline and ColumnTransformer use this feature and define the default style\n",
       "- Estimators will overwrite some part of the style using the `sk-estimator` class\n",
       "*/\n",
       "\n",
       "/* Pipeline and ColumnTransformer style (default) */\n",
       "\n",
       "#sk-container-id-1 div.sk-toggleable {\n",
       "  /* Default theme specific background. It is overwritten whether we have a\n",
       "  specific estimator or a Pipeline/ColumnTransformer */\n",
       "  background-color: var(--sklearn-color-background);\n",
       "}\n",
       "\n",
       "/* Toggleable label */\n",
       "#sk-container-id-1 label.sk-toggleable__label {\n",
       "  cursor: pointer;\n",
       "  display: flex;\n",
       "  width: 100%;\n",
       "  margin-bottom: 0;\n",
       "  padding: 0.5em;\n",
       "  box-sizing: border-box;\n",
       "  text-align: center;\n",
       "  align-items: start;\n",
       "  justify-content: space-between;\n",
       "  gap: 0.5em;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 label.sk-toggleable__label .caption {\n",
       "  font-size: 0.6rem;\n",
       "  font-weight: lighter;\n",
       "  color: var(--sklearn-color-text-muted);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 label.sk-toggleable__label-arrow:before {\n",
       "  /* Arrow on the left of the label */\n",
       "  content: \"▸\";\n",
       "  float: left;\n",
       "  margin-right: 0.25em;\n",
       "  color: var(--sklearn-color-icon);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 label.sk-toggleable__label-arrow:hover:before {\n",
       "  color: var(--sklearn-color-text);\n",
       "}\n",
       "\n",
       "/* Toggleable content - dropdown */\n",
       "\n",
       "#sk-container-id-1 div.sk-toggleable__content {\n",
       "  max-height: 0;\n",
       "  max-width: 0;\n",
       "  overflow: hidden;\n",
       "  text-align: left;\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-0);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-toggleable__content.fitted {\n",
       "  /* fitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-0);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-toggleable__content pre {\n",
       "  margin: 0.2em;\n",
       "  border-radius: 0.25em;\n",
       "  color: var(--sklearn-color-text);\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-0);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-toggleable__content.fitted pre {\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-0);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n",
       "  /* Expand drop-down */\n",
       "  max-height: 200px;\n",
       "  max-width: 100%;\n",
       "  overflow: auto;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n",
       "  content: \"▾\";\n",
       "}\n",
       "\n",
       "/* Pipeline/ColumnTransformer-specific style */\n",
       "\n",
       "#sk-container-id-1 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
       "  color: var(--sklearn-color-text);\n",
       "  background-color: var(--sklearn-color-unfitted-level-2);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-label.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
       "  background-color: var(--sklearn-color-fitted-level-2);\n",
       "}\n",
       "\n",
       "/* Estimator-specific style */\n",
       "\n",
       "/* Colorize estimator box */\n",
       "#sk-container-id-1 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-2);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-estimator.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
       "  /* fitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-2);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-label label.sk-toggleable__label,\n",
       "#sk-container-id-1 div.sk-label label {\n",
       "  /* The background is the default theme color */\n",
       "  color: var(--sklearn-color-text-on-default-background);\n",
       "}\n",
       "\n",
       "/* On hover, darken the color of the background */\n",
       "#sk-container-id-1 div.sk-label:hover label.sk-toggleable__label {\n",
       "  color: var(--sklearn-color-text);\n",
       "  background-color: var(--sklearn-color-unfitted-level-2);\n",
       "}\n",
       "\n",
       "/* Label box, darken color on hover, fitted */\n",
       "#sk-container-id-1 div.sk-label.fitted:hover label.sk-toggleable__label.fitted {\n",
       "  color: var(--sklearn-color-text);\n",
       "  background-color: var(--sklearn-color-fitted-level-2);\n",
       "}\n",
       "\n",
       "/* Estimator label */\n",
       "\n",
       "#sk-container-id-1 div.sk-label label {\n",
       "  font-family: monospace;\n",
       "  font-weight: bold;\n",
       "  display: inline-block;\n",
       "  line-height: 1.2em;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-label-container {\n",
       "  text-align: center;\n",
       "}\n",
       "\n",
       "/* Estimator-specific */\n",
       "#sk-container-id-1 div.sk-estimator {\n",
       "  font-family: monospace;\n",
       "  border: 1px dotted var(--sklearn-color-border-box);\n",
       "  border-radius: 0.25em;\n",
       "  box-sizing: border-box;\n",
       "  margin-bottom: 0.5em;\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-0);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-estimator.fitted {\n",
       "  /* fitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-0);\n",
       "}\n",
       "\n",
       "/* on hover */\n",
       "#sk-container-id-1 div.sk-estimator:hover {\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-2);\n",
       "}\n",
       "\n",
       "#sk-container-id-1 div.sk-estimator.fitted:hover {\n",
       "  /* fitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-2);\n",
       "}\n",
       "\n",
       "/* Specification for estimator info (e.g. \"i\" and \"?\") */\n",
       "\n",
       "/* Common style for \"i\" and \"?\" */\n",
       "\n",
       ".sk-estimator-doc-link,\n",
       "a:link.sk-estimator-doc-link,\n",
       "a:visited.sk-estimator-doc-link {\n",
       "  float: right;\n",
       "  font-size: smaller;\n",
       "  line-height: 1em;\n",
       "  font-family: monospace;\n",
       "  background-color: var(--sklearn-color-background);\n",
       "  border-radius: 1em;\n",
       "  height: 1em;\n",
       "  width: 1em;\n",
       "  text-decoration: none !important;\n",
       "  margin-left: 0.5em;\n",
       "  text-align: center;\n",
       "  /* unfitted */\n",
       "  border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
       "  color: var(--sklearn-color-unfitted-level-1);\n",
       "}\n",
       "\n",
       ".sk-estimator-doc-link.fitted,\n",
       "a:link.sk-estimator-doc-link.fitted,\n",
       "a:visited.sk-estimator-doc-link.fitted {\n",
       "  /* fitted */\n",
       "  border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
       "  color: var(--sklearn-color-fitted-level-1);\n",
       "}\n",
       "\n",
       "/* On hover */\n",
       "div.sk-estimator:hover .sk-estimator-doc-link:hover,\n",
       ".sk-estimator-doc-link:hover,\n",
       "div.sk-label-container:hover .sk-estimator-doc-link:hover,\n",
       ".sk-estimator-doc-link:hover {\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-3);\n",
       "  color: var(--sklearn-color-background);\n",
       "  text-decoration: none;\n",
       "}\n",
       "\n",
       "div.sk-estimator.fitted:hover .sk-estimator-doc-link.fitted:hover,\n",
       ".sk-estimator-doc-link.fitted:hover,\n",
       "div.sk-label-container:hover .sk-estimator-doc-link.fitted:hover,\n",
       ".sk-estimator-doc-link.fitted:hover {\n",
       "  /* fitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-3);\n",
       "  color: var(--sklearn-color-background);\n",
       "  text-decoration: none;\n",
       "}\n",
       "\n",
       "/* Span, style for the box shown on hovering the info icon */\n",
       ".sk-estimator-doc-link span {\n",
       "  display: none;\n",
       "  z-index: 9999;\n",
       "  position: relative;\n",
       "  font-weight: normal;\n",
       "  right: .2ex;\n",
       "  padding: .5ex;\n",
       "  margin: .5ex;\n",
       "  width: min-content;\n",
       "  min-width: 20ex;\n",
       "  max-width: 50ex;\n",
       "  color: var(--sklearn-color-text);\n",
       "  box-shadow: 2pt 2pt 4pt #999;\n",
       "  /* unfitted */\n",
       "  background: var(--sklearn-color-unfitted-level-0);\n",
       "  border: .5pt solid var(--sklearn-color-unfitted-level-3);\n",
       "}\n",
       "\n",
       ".sk-estimator-doc-link.fitted span {\n",
       "  /* fitted */\n",
       "  background: var(--sklearn-color-fitted-level-0);\n",
       "  border: var(--sklearn-color-fitted-level-3);\n",
       "}\n",
       "\n",
       ".sk-estimator-doc-link:hover span {\n",
       "  display: block;\n",
       "}\n",
       "\n",
       "/* \"?\"-specific style due to the `<a>` HTML tag */\n",
       "\n",
       "#sk-container-id-1 a.estimator_doc_link {\n",
       "  float: right;\n",
       "  font-size: 1rem;\n",
       "  line-height: 1em;\n",
       "  font-family: monospace;\n",
       "  background-color: var(--sklearn-color-background);\n",
       "  border-radius: 1rem;\n",
       "  height: 1rem;\n",
       "  width: 1rem;\n",
       "  text-decoration: none;\n",
       "  /* unfitted */\n",
       "  color: var(--sklearn-color-unfitted-level-1);\n",
       "  border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 a.estimator_doc_link.fitted {\n",
       "  /* fitted */\n",
       "  border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
       "  color: var(--sklearn-color-fitted-level-1);\n",
       "}\n",
       "\n",
       "/* On hover */\n",
       "#sk-container-id-1 a.estimator_doc_link:hover {\n",
       "  /* unfitted */\n",
       "  background-color: var(--sklearn-color-unfitted-level-3);\n",
       "  color: var(--sklearn-color-background);\n",
       "  text-decoration: none;\n",
       "}\n",
       "\n",
       "#sk-container-id-1 a.estimator_doc_link.fitted:hover {\n",
       "  /* fitted */\n",
       "  background-color: var(--sklearn-color-fitted-level-3);\n",
       "}\n",
       "</style><div id=\"sk-container-id-1\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>StandardScaler()</pre><b>In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. <br />On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item\"><div class=\"sk-estimator fitted sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-1\" type=\"checkbox\" checked><label for=\"sk-estimator-id-1\" class=\"sk-toggleable__label fitted sk-toggleable__label-arrow\"><div><div>StandardScaler</div></div><div><a class=\"sk-estimator-doc-link fitted\" rel=\"noreferrer\" target=\"_blank\" href=\"https://scikit-learn.org/1.6/modules/generated/sklearn.preprocessing.StandardScaler.html\">?<span>Documentation for StandardScaler</span></a><span class=\"sk-estimator-doc-link fitted\">i<span>Fitted</span></span></div></label><div class=\"sk-toggleable__content fitted\"><pre>StandardScaler()</pre></div> </div></div></div></div>"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 4
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "# 构建数据集\n",
   "id": "96eecd732fca2c52"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-02-07T11:40:54.181782Z",
     "start_time": "2025-02-07T11:40:54.167779Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 从PyTorch的utils.data模块导入Dataset类，并定义一个名为HousingDataset的新类，继承自Dataset。\n",
    "# Dataset是PyTorch中用于表示数据集的抽象基类\n",
    "# 通过继承Dataset类，我们可以自定义数据集的行为，使其与PyTorch的数据加载器兼容。\n",
    "from torch.utils.data import Dataset\n",
    "\n",
    "\n",
    "class HousingDataset(Dataset):\n",
    "\n",
    "    # 初始化方法，根据指定的模式加载数据，并对数据进行预处理\n",
    "    def __init__(self, mode='train'):\n",
    "        self.x, self.y = dataset_maps[mode]\n",
    "        self.x = torch.from_numpy(scaler.transform(self.x)).float()\n",
    "        self.y = torch.from_numpy(self.y).float().reshape(-1, 1)\n",
    "\n",
    "    def __len__(self):\n",
    "        return len(self.x)\n",
    "\n",
    "    def __getitem__(self, idx):\n",
    "        return self.x[idx], self.y[idx]\n",
    "\n",
    "\n",
    "train_ds = HousingDataset(\"train\")\n",
    "valid_ds = HousingDataset(\"valid\")\n",
    "test_ds = HousingDataset(\"test\")"
   ],
   "id": "6a41a4c05a5c5e9b",
   "outputs": [],
   "execution_count": 5
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "# DataLoader",
   "id": "fd155fde88664be"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-02-07T11:40:54.843213Z",
     "start_time": "2025-02-07T11:40:54.840161Z"
    }
   },
   "cell_type": "code",
   "source": [
    "from torch.utils.data import DataLoader\n",
    "\n",
    "#放到DataLoader中的train_ds, valid_ds, test_ds都是dataset类型的数据\n",
    "batch_size = 256  #batch_size是可以调的超参数\n",
    "train_loader = DataLoader(train_ds, batch_size=batch_size, shuffle=True)\n",
    "val_loader = DataLoader(valid_ds, batch_size=batch_size, shuffle=False)\n",
    "test_loader = DataLoader(test_ds, batch_size=batch_size, shuffle=False)"
   ],
   "id": "abb25ac18af27f52",
   "outputs": [],
   "execution_count": 6
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "# 模型构建",
   "id": "e592c52591c8f86a"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-02-07T11:40:55.687638Z",
     "start_time": "2025-02-07T11:40:55.684639Z"
    }
   },
   "cell_type": "code",
   "source": [
    "class NeuralNetwork(nn.Module):\n",
    "    def __init__(self, input_dim=8):\n",
    "        super().__init__()\n",
    "        self.linear_relu_stack = nn.Sequential(\n",
    "            nn.Linear(input_dim, 30),\n",
    "            nn.ReLU(),\n",
    "            nn.Linear(30, 1)\n",
    "        )\n",
    "\n",
    "    def forward(self, x):\n",
    "        # x.shape [batch size, 8]\n",
    "        logits = self.linear_relu_stack(x)\n",
    "        # logits.shape [batch size, 1]\n",
    "        return logits"
   ],
   "id": "295728256f7e690b",
   "outputs": [],
   "execution_count": 7
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-02-07T11:40:56.327640Z",
     "start_time": "2025-02-07T11:40:56.324198Z"
    }
   },
   "cell_type": "code",
   "source": [
    "class EarlyStopCallback:\n",
    "    def __init__(self, patience=5, min_delta=0.01):\n",
    "        self.patience = patience  #容忍度\n",
    "        self.min_delta = min_delta  #最小变化量\n",
    "        self.best_metric = -1  #最佳指标\n",
    "        self.counter = 0  #计数器\n",
    "\n",
    "    def __call__(self, metric):\n",
    "        if metric >= self.best_metric + self.min_delta:\n",
    "            self.best_metric = metric  #更新最佳指标\n",
    "            self.counter = 0  #计数器清零\n",
    "        else:\n",
    "            self.counter += 1  #计数器加一\n",
    "\n",
    "    @property  #定义一个属性，用于判断是否满足early stop条件\n",
    "    def early_stop(self):\n",
    "        return self.counter >= self.patience"
   ],
   "id": "164f5f60ef3ab43",
   "outputs": [],
   "execution_count": 8
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-02-07T11:40:56.700264Z",
     "start_time": "2025-02-07T11:40:56.697412Z"
    }
   },
   "cell_type": "code",
   "source": [
    "from sklearn.metrics import accuracy_score\n",
    "\n",
    "\n",
    "@torch.no_grad()  #不计算梯度\n",
    "def evaluating(model, dataloader, loss_fct):\n",
    "    loss_list = []  #损失列表\n",
    "    for datas, labels in dataloader:  # 遍历验证集\n",
    "        datas = datas.to(device)\n",
    "        labels = labels.to(device)\n",
    "        # 前向计算\n",
    "        logits = model(datas)\n",
    "        loss = loss_fct(logits, labels)  # 验证集损失\n",
    "        loss_list.append(loss.item())  # 损失列表添加损失值\n",
    "\n",
    "    return np.mean(loss_list)  # 计算平均损失值"
   ],
   "id": "fe36d733b93aac65",
   "outputs": [],
   "execution_count": 9
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-02-07T11:40:57.287054Z",
     "start_time": "2025-02-07T11:40:57.283059Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 训练\n",
    "def training(\n",
    "        model,  #模型\n",
    "        train_loader,  #训练集\n",
    "        val_loader,  #验证集\n",
    "        epoch,  #训练轮数\n",
    "        loss_fct,  #损失函数\n",
    "        optimizer,  #优化器\n",
    "        early_stop_callback=None,  #早停回调函数\n",
    "        eval_step=500,  #每隔多少步进行一次验证集验证\n",
    "):\n",
    "    # 记录训练过程\n",
    "    record_dict = {\n",
    "        \"train\": [],\n",
    "        \"val\": []\n",
    "    }\n",
    "\n",
    "    global_step = 0  #全局步数\n",
    "    model.train()  #训练模式\n",
    "\n",
    "    # 训练\n",
    "    with tqdm(total=epoch * len(train_loader)) as pbar:\n",
    "        for epoch_id in range(epoch):\n",
    "            for datas, labels in train_loader:\n",
    "                datas = datas.to(device)\n",
    "                labels = labels.to(device)\n",
    "                # 梯度清空\n",
    "                optimizer.zero_grad()\n",
    "                # 模型前向计算\n",
    "                logits = model(datas)  #得到预测值\n",
    "                # 计算损失\n",
    "                loss = loss_fct(logits, labels)\n",
    "                # 梯度回传\n",
    "                loss.backward()\n",
    "                # 调整优化器，包括学习率的变动等\n",
    "                optimizer.step()\n",
    "\n",
    "                loss = loss.cpu().item()  #转为cpu类型，item()是取值\n",
    "                # 记录训练过程\n",
    "                record_dict[\"train\"].append({\n",
    "                    \"loss\": loss, \"step\": global_step\n",
    "                })\n",
    "\n",
    "                # 评估\n",
    "                if global_step % eval_step == 0:  #每隔eval_step步进行一次验证集验证\n",
    "                    model.eval()  #验证模式\n",
    "                    val_loss = evaluating(model, val_loader, loss_fct)  #验证集损失\n",
    "\n",
    "                    # 记录验证集过程\n",
    "                    record_dict[\"val\"].append({\n",
    "                        \"loss\": val_loss, \"step\": global_step\n",
    "                    })\n",
    "\n",
    "                    model.train()  #训练模式\n",
    "\n",
    "                    # 早停 Early Stop\n",
    "                    if early_stop_callback is not None:  #如果有早停回调函数\n",
    "                        early_stop_callback(-val_loss)  #根据验证集的损失来实现早停\n",
    "                        if early_stop_callback.early_stop:  #如果早停条件满足\n",
    "                            print(f\"Early stop at epoch {epoch_id} / global_step {global_step}\")\n",
    "                            return record_dict\n",
    "\n",
    "                # 全局步数加一\n",
    "                global_step += 1\n",
    "                pbar.update(1)  #更新进度条\n",
    "                pbar.set_postfix({\"epoch\": epoch_id})  #设置进度条显示信息\n",
    "\n",
    "    return record_dict  #返回训练过程记录"
   ],
   "id": "fed9e91219a03881",
   "outputs": [],
   "execution_count": 10
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-02-07T11:40:57.777588Z",
     "start_time": "2025-02-07T11:40:57.774145Z"
    }
   },
   "cell_type": "code",
   "source": [
    "#画线要注意的是损失是不一定在零到1之间的\n",
    "def plot_learning_curves(record_dict, sample_step=5):\n",
    "    # build DataFrame\n",
    "    train_df = pd.DataFrame(record_dict[\"train\"]).set_index(\"step\").iloc[::sample_step]\n",
    "    val_df = pd.DataFrame(record_dict[\"val\"]).set_index(\"step\")\n",
    "\n",
    "    # plot\n",
    "    for idx, item in enumerate(train_df.columns):\n",
    "        plt.plot(train_df.index, train_df[item], label=f\"train_{item}\")\n",
    "        plt.plot(val_df.index, val_df[item], label=f\"val_{item}\")\n",
    "        plt.grid()\n",
    "        plt.legend()\n",
    "        # plt.xticks(range(0, train_df.index[-1], 10*sample_step), range(0, train_df.index[-1], 10*sample_step))\n",
    "        plt.xlabel(\"step\")\n",
    "\n",
    "        plt.show()\n",
    "\n",
    "# plot_learning_curves(record)  #横坐标是 steps"
   ],
   "id": "165f677497c4920a",
   "outputs": [],
   "execution_count": 11
  },
  {
   "metadata": {},
   "cell_type": "markdown",
   "source": "# 网格搜索，for循环实现\n",
   "id": "20ca6d60c3cbfac4"
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-02-07T11:41:19.616430Z",
     "start_time": "2025-02-07T11:40:59.029450Z"
    }
   },
   "cell_type": "code",
   "source": [
    "for lr in [1e-2, 3e-2, 3e-1, 1e-3]:\n",
    "    epoch = 100\n",
    "\n",
    "    model = NeuralNetwork()\n",
    "\n",
    "    # 1. 定义损失函数 采用MSE损失\n",
    "    loss_fct = nn.MSELoss()\n",
    "    # 2. 定义优化器 采用SGD\n",
    "    # Optimizers specified in the torch.optim package\n",
    "    optimizer = torch.optim.SGD(model.parameters(), lr=lr, momentum=0.9)\n",
    "\n",
    "    # 3. early stop\n",
    "    early_stop_callback = EarlyStopCallback(patience=10, min_delta=1e-3)\n",
    "\n",
    "    model = model.to(device)\n",
    "    record = training(\n",
    "        model,\n",
    "        train_loader,\n",
    "        val_loader,\n",
    "        epoch,\n",
    "        loss_fct,\n",
    "        optimizer,\n",
    "        early_stop_callback=early_stop_callback,\n",
    "        eval_step=len(train_loader)\n",
    "    )\n",
    "    print(\"lr: {}\".format(lr))\n",
    "    plot_learning_curves(record)\n",
    "    model.eval()\n",
    "    loss = evaluating(model, val_loader, loss_fct)\n",
    "    print(f\"loss:     {loss:.4f}\")"
   ],
   "id": "898b46c4f3d0246b",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "  0%|          | 0/4600 [00:00<?, ?it/s]"
      ],
      "application/vnd.jupyter.widget-view+json": {
       "version_major": 2,
       "version_minor": 0,
       "model_id": "80cd66b85ae14b25974bee710463d681"
      }
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Early stop at epoch 37 / global_step 1702\n",
      "lr: 0.01\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "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"
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "loss:     0.3533\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "  0%|          | 0/4600 [00:00<?, ?it/s]"
      ],
      "application/vnd.jupyter.widget-view+json": {
       "version_major": 2,
       "version_minor": 0,
       "model_id": "f299ee1e0c3342abaccb67a55a8b1d5a"
      }
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Early stop at epoch 29 / global_step 1334\n",
      "lr: 0.03\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAicAAAGwCAYAAABy28W7AAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAZM5JREFUeJzt3QeYU1X6BvA3ZXqDoffem4AICCJIExBFXQuw9rK6sHZX+VsW1u5a117WLoINsGBBpErvHem9w/SWSe7/+U5y0ybThyRz8/6eJ2SYkknOpLz5znfONWmapoGIiIgoTJhDfQWIiIiIvDGcEBERUVhhOCEiIqKwwnBCREREYYXhhIiIiMIKwwkRERGFFYYTIiIiCivWYP9Ch8OBw4cPIykpCSaTKdi/noiIiCpAtkXLzMxEw4YNYTabjRVOJJg0adIk2L+WiIiIqsCBAwfQuHFjGCqcSMVEv3HJyclVdrk2mw2//vorhg0bhqioKEQ6jocHx8IXx8MXx8ODY+GL4+E7FjNnzsStt97qfh03VDjRp3IkmFR1OImPj1eXGel3IsHx8OBY+OJ4+OJ4eHAsfHE8io6FCEZLBhtiiYiIKKwwnBAREVFYYTghIiKisBL0nhMiIjIe2SaioKAARuuzsFqtyMvLg91uh9FFRUXBYrEgHDCcEBFRpUgo2bNnjwooRtvXo379+mp1aaTsy1WjRg11m0N9e8sdTg4dOoSHHnoIP/30E3JyctC6dWt8+OGHOPfcc8/ONSQiorB+AT9y5Ih6xy17WJ3tzbmCScJWVlYWEhMTDXW7ivs7ymv68ePH1f8bNGiAahNOzpw5g379+mHQoEEqnNSpUwc7duxAzZo1z941JCKisFVYWKhe1GTXUH2pqdGmqmJjYw0fTkRcXJw6l4BSt27dkE7xlCucPPfccyoZS6VE16JFi7NxvYiIqBrQezGio6NDfVWoCugBU/ptqk04+e677zB8+HBcddVVWLBgARo1aoS///3vuO2224r9mfz8fHXSZWRkuG+4nKqKfllVeZnVGcfDg2Phi+Phi+NRubGQ75UpATkZsedEPzfabSuO/rf0DyfBfnyYNH30y0BKW+K+++5TAWXlypW4++678fbbb+OGG24I+DOTJ0/GlClTinx+6tSphisBEhFFGlnNIg2UUlVn9aT6KygoUA3AR48eVVN23mT6bty4cUhPT6/SHd4rHU7kjieNr0uWLHF/7q677lIhZenSpWWunMid+OTJk1W+ff2cOXMwdOjQiN9mWHA8PDgWvjgevjgelRsLWWYrL2bNmzd3v4E12lF45VgyoV69Eizy99y7d696nfb+e8p9Y9asWUELJ+Wa1pHu3Y4dO/p8rkOHDvjmm2+K/ZmYmBh18id3/LPxRHC2Lre64nh4cCx8cTx8cTwqNhbScyIv3NIwarSmUX0qR799xZFgds8996hTZc2fP18tOpEFKLKsN9jkdsrtDfXjoVzhRFbqbN++3edzf/75J5o1a4ZQO5qRh1N5QEGhA3x+ISKikgwcOBDnnHMOXnnllUpflsweJCQkVMn1ogqEk3vvvRfnn38+nn76aVx99dVYsWIF3n33XXUKtSveWoYTWVb0Oj8bXZoUrdQQERGVZ0rHv+eiOLKtBlWtctXgevXqhRkzZuCLL75A586d8cQTT6jUOX78eISa2TUf6Ch7Cw0REZ2NzbwKCkNyKmsL5Y033qhWnL766qtqCkNOH330kTqXPbx69uyp2hEWL16sdr4dM2YM6tWrpzZjk9fB3377rci0jncFRi7n/fffx+WXX64WfrRp00atdq2ob775Bp06dVLXSX7Xiy++6PP1N998U/0O6RGR6/mXv/zF/bWvv/4aXbp0UXuY1KpVC0OGDEF2djbCXbl3iL3kkkvUKdzovUrMJkREoZNrs6Pj47+E5Hdv+fdwxEeX/rImoURaEuRN9r///W/1uc2bN6vzhx9+GC+88AJatmyJlJQUbN26FSNGjFAzBhIOPvnkE4wePVq1ODRt2rTY3yGrVJ9//nn85z//wWuvvabexO/btw+pqanluk2rV69WMxWy8vWaa65RC1JkCw8JGhKyVq1apRamfPrpp2pm4/Tp01i0aJH6Wdm5d+zYsep6SFCS5l75WjnWwYSMYY6tw8oJERGVhYQOWX0qVQ1ZBi22bdumziWsyGolvSFWqg7Sb6k3xMqMgcwgSCVk4sSJxf4OCQ4SDIQEm//+97+qFeLiiy8u13V96aWXMHjwYDz22GPq/23btsWWLVtU6JHfsX//ftXvIkUDWVUkPaDdu3d3hxOZmrriiivcvaFye6oDA4UT57ndwXBCRBQqcVEWVcEI1e+uLP/jxMmxdSSQzJ492/1in5ubq0JBSbp27er+WMKDLL3Vj1tTHlu3bsVll13m8zkJSzKNJCulJEhJ8JBKjwQfOenTSd26dVPBRgKJbKA6bNgwNeVTHQ45Y5h1X2ZXOmHhhIgodKTfQqZWQnGqir1I/FfdSMVi5syZqvohUyLr1q1TL/ayWVlJ/JfhynU7G7vMJiUlYc2aNaoXVLb7ePzxx1UoSUtLUzu8yr410kcj24DI9FK7du1UH024M0444bQOERGVkUzr6McFKsny5cvVDuhSjZBQItNAsklZsHTo0AF//PGHz+fk/zK9o28vL7v0SqOr9JZs2LBBXb/ff//dHYqk0iI9MGvXrlW3W6alwp3hpnU4q0NERKWRVS8SPOSFXFbhFFfVaNWqlXoxv/TSS9ULvVRSgnmcnfvvv1+tEJKpJWmIld3YX3/9dbVCR/zwww/YvXs3BgwYoKZrZPpJrp9USOT2zZ07V03nyFGG5f8nTpxQgSfcGaZyopfzWDkhIqLSPPDAA6ryINMdsk9JcT0kTz31lHrRl5UwskpHejd69OgRtOvZo0cPfPnll5g2bZpaXSTTNtK0K82wQnaR/fbbb3HRRRep0CHHupMpHll6LH0uCxcuxMiRI1Wl5dFHH1XLkGX1UbgzXOWE2YSIiEojL9b+x4TTX/C9yXJh2dfEe/v6CRMm+HyP/zRPoKW60gNS1p1rNb+fv/LKK9UpkP79+6st7wORsPLzzz+jOjJcz4md6YSIiKhaM1w44bQOERGFqzvuuEP1uAQ6ydfIaNM6rpjFbEJEROFK+kWk3yUQ6REho4UTVk6IiCjMyaoZOVGETOvoe+9wKTEREVH1ZjZa5URjOiEiIqrWDBdOuFqHiIioejNQOHGes3BCRERUvRkonOgH/mM6ISIiqs4MFE6c56ycEBFRMI7N88orr5T58CpyZGOKyHDCpcRERERGYMAD/4X6mhAREVFlGG9ah+mEiCh0pHpdkB2aUxkr5++++y4aNmwIh8Ph8/nLLrsMN998M3bt2qU+btCgARo3bozevXurg/9VlY0bN6qjCMfFxaFWrVq4/fbbkZWV5f76/Pnzcd555yEhIUEddbhfv37Yt2+f+tr69esxaNAgJCUlqR1le/bsiVWrVsFojLNDrCudcFqHiCiEbDnA0w1D87v/7zAQnVDqt1111VX4xz/+gXnz5mHw4MHqc6dPn1ZH8J09e7YKCiNHjsQTTzwBm82GGTNmYPTo0di+fbs6SnFlZGdnY/jw4ejbty9WrlyJ48eP49Zbb8XEiRPx0UcfobCwEGPGjMFtt92GL774AgUFBVixYoV7dmD8+PHo3r073nrrLVgsFqxbtw5RUVEwGuOEEzbEEhFRGdSsWRMjRozA1KlT3eHk66+/Ru3atVVVwmw2o1u3bqqykpGRoY6HIw2t3333nQoRlSG/My8vD5988omqjIjXX39dhZ/nnntOBY309HRccsklaNWqlfp6hw4d3D+/f/9+PPjgg2jfvr36f5s2bWBEBgonXEpMRBRyUfHOCkaofncZSQVCqhNvvvkmYmJi8Pnnn+Paa69VwUQqJ5MnT8aPP/6Iw4cPw263Izc3VwWDytq6dasKPnowETJtI0FIKjMDBgzAjTfeqKorQ4cOxZAhQ3D11VerKSZx3333qUrLp59+qr4mVSA9xBiJgXpO2BBLRBRy8lwsUyuhOOkHWSsDqVTIm1kJIAcOHMCiRYtUYBFy1GCZynnyySfVNM+aNWvQpUsXNcUSDB9++CGWLl2K888/H9OnT0fbtm2xbNky9TUJTZs3b8aoUaPw+++/o2PHjuq6Go0BD/zHdEJERCWLjY3FFVdcoSom0tvRrl079OjRQ33tjz/+UNWLyy+/HJ06dUL9+vWxd+/eKvm9MkUjTa3Se6KT3ycVG7kOuu7du2PSpElYsmQJOnfurKaDdBJW7r33Xvz666/qNkiYMRrDhBPuc0JEROUhlRKpnHzwwQfuqonex/Htt9+qZlNZWSNf81/ZU5nfKcHohhtuwKZNm1RTrjTnXnfddahXrx727NmjQolUTmSFjgSQHTt2qFAjU0vS8yKreeRrEmqkqda7J8UoDNNzYuG0DhERlYMs501NTVW9HuPGjXN//qWXXlJLivv376++/vDDDyMzM7NKfmd8fDx++eUX3H333ejVq5f6/5VXXql+p/71bdu24eOPP8apU6dUr8mECRPwt7/9Ta3kkc9df/31OHbsmGrglcrJlClTYDSGCSec1iEiovKQqRRpeA20Nb30c+irdWQ/Ef9VOuWZ5vFfqCH9K3L5gUj1ZEYxPSTR0dFqCioSGG5ah9mEiIioejNQOJF/tSqbFyQiIiqNNNQmJiYGPEkzLUX4tM5ju8fixZhjmJ7zpfQyh/rqEBFRBLj00kvV9vaBGHHn1mAxTDgxQYPFpMFq8yzPIiIiOpvkGDdyoqplmGmdfLNzZ8CoQs/Bk4iIKDi4O7cxOMKkNcIwlZN8i3MrYGshKydERMEiUxdyULoTJ06gTp067gPUGeWFWnaFlWPhyMoeo4fLgoIC9XeU2yorg0LJOOHE7Awn0baqWYtORESlkyPjNm7cGAcPHqyyXVTD6QVbNj6Li4szVOgqieyzIkdeDnUYM1zlJMrOygkRUTDJyhTZVdVms8FI5PYsXLhQHYwvEppbLRYLrFZrWAQxA4WTRHUeXcmekzybHc//vB1DOtbF+a1qV9G1IyIy/gubnIxEbo/syirbzUdCOAknBgonCVUSTpbuPoUP/tiDzYfTGU6IiIhCwDAdPgVWfVonp1KXk2+zO88Lw6NjmYiIKNIYKJw4p3ViKlk50VfDcVEcERFRaBgnnOjTOpVsiNWPasw1+0RERKFhvMqJvZKVE1fNhNmEiIgoNAwTTmyuyklMFVVOHEwnREREIWG4htjKhhN9OofZhIiIKDQME05s1qQqCifOc1ZOiIiIQsMw4aTQ1XMS7ciRAyJU+HLYc0JERBRahpvWMUu4KKh4U6yea/SQQkRERMFlmHCiWWJh01xbJ+dX/OB/ml9jLBEREYVxOJk8ebI6IJD3qX379ggHZrMJmYhz/ic/o8KXo/eacJ8TIiKianJsnU6dOuG3337zXIA1PA7PI0EpS4tDqimrcpUTrtYhIiIKqXInCwkj9evXR7gxm4EsxFe6csLVOkRERNUsnOzYsQMNGzZUh5Du27cvnnnmGTRt2rTY78/Pz1cnXUaGMzjYbDZ1qjIOh3tapzD7DLQKXrat0O4OJ1V6/YJMv+7V+TZUFY6FL46HL46HB8fCF8fDI9hjYNLK0Vzx008/ISsrC+3atcORI0cwZcoUHDp0CJs2bUJSknOfkUB9KvJ9/qZOnYr4eFelowrMP2LCqEMvYYhlLdY2uRn7aw+s0OX8ccyEL3dbUCtGw+M9nEGFiIgo0uXk5GDcuHFIT09HcnJy+IQTf2lpaWjWrBleeukl3HLLLWWunDRp0gQnT56s0hv3weI9qPv7Pbjc8gfsg6fA0WdChS7n8xUHMPn7rWhcIxbz7h+A6pxy58yZg6FDhyIqKgqRjGPhi+Phi+PhwbHwxfHwHYtZs2YFLZxUqpu1Ro0aaNu2LXbu3Fns98TExKiTP/lDV+UfO8pqUQ2xwlKYA0sFL9sizStqSbHJEHfGqh7n6oxj4Yvj4Yvj4cGx8MXxqGb7nMgUz65du9CgQQOEmtkkDbH6UuKKr9bR9zfhUmIiIqJqEE4eeOABLFiwAHv37sWSJUtw+eWXw2KxYOzYsQiHpcSZmquHJa8yq3WcoYSbsBEREYVGuaZ1Dh48qILIqVOnUKdOHfTv3x/Lli1TH4eapco2YdPPmU6IiIjCPpxMmzYN4UqmddyVk8rsc+J3TkRERMFlmGPrqB1iq6DnxLNDLOMJERFRKBgmnFRdQyy3ryciIgolA4WTqmqIdZ6z54SIiCg0DBNO1GqdKlxKzNU6REREoWGYcGJRDbGucGLLBuyFFboczdUKy54TIiKi0DDUtE62XjkRBRWrnuiZhNmEiIgoNAwTTkwmoABR6lSZqR33ap2qvHJEREQUmZUTkWNOqFRTLDdhIyIiCi3jhROTvhFb5aZ1GE6IiIhCw0DhBH7hpKKVE+5zQkREFErGCSeudJKDylZOGE6IiIhCyXCVk+xKVk48x9ZhOiEiIgoFA4UTk284qXBDrDOUcBM2IiKi0DDUDrEiu9LTOvo50wkREVEoGCacVNW0DrevJyIiCi0DhRNnOsnSt7CvaOXEq9eE1RMiIqLgM044cd2SrCra58T/YyIiIgoO44QTd8+Jq3KSl16hy/GulnAjNiIiouAzXDjJqmRDrHevCaMJERFR8BkmnLiyCTLdPScV3OfEK5GwckJERBR8xp3WqXDlxLshtmquGxEREUVkOHGeZ6Bym7B595wwnBAREQWfgcKJyXdax54PFOaX+3K88windYiIiILPcOEkWw8nIj+rctM6VXPViIiIKDLDifPcJjcpKsH5n/zyLydmQywREVFoGSicmDyBIiapwk2xPkuJmU2IiIiCznBLiVWgiE2uRFMst68nIiIKJcNVTuyOSlZOHF4fM5sQEREFnWHCicXVdKICRSXCCQ/8R0REFFoGnNaRyklyhXeJ9a6WsHJCREQUfAZtiK1MOPFeSsx0QkREFGwGCide1Y7KNMRytQ4REVFIGSacmKpsKbEnkXCfEyIiouAzZuXEPa1TkYZYr4+ZTYiIiILOgKt1vCsnlW2IZTohIiIKNsNN60ie0CqzlJhHJSYiIgopw03rCC264g2x3oGE4YSIiCj4DBROPOnEEZNY4Wkdn03YuJSYiIgo6AwUTjwfO/TKCbevJyIiqnYM13MiHNFelZNyzs14V0vYEEtERBR8hgknlkDhxFEIFOaV63K8qyXMJkRERMFnzGmdKAknpgo1xfqu1mE6ISIiCjZjTutIMKngcmKf1TpVdu2IiIgospcSS1NrBQ/+x+3riYiIQstA4cSrclKJXWK1YlbuEBERUXAYJpx4ZRPYK3HwP5+GWE7sEBERBZ2BwokJJleYUJWT2IrtEsvt64mIiELLMOHEu3qiQkVVNMQynBAREVWvcPLss8+qisU999yDcGDy6Tmp2C6x3ISNiIiomoaTlStX4p133kHXrl0RbjfG4VM5Sa/E9vUMJ0RERNUinGRlZWH8+PF47733ULNmTYTbtI7DUfHKiXcgYTQhIiIKPmtFfmjChAkYNWoUhgwZgieffLLE783Pz1cnXUaGs0HVZrOpU1WRy9KndfJtNtijEmCRsJGbBns5fo93OLHZCqv0OgaTfr2r6/WvShwLXxwPXxwPD46FL46HR7DHoNzhZNq0aVizZo2a1imLZ555BlOmTCny+V9//RXx8fGoSiaTxBFg3rz5yMzZg+4AThzcjWWzZ5f5Mk6dkstwxpwlS5bg6CZUa3PmzAn1VQgbHAtfHA9fHA8PjoUvjkfwlSucHDhwAHfffbf6Q8XGxpbpZyZNmoT77rvPp3LSpEkTDBs2DMnJrqmXKkp1k1b8rj4eMOBCtDrlAPa/jzrJsRg5cmSZL+eTQyuAzDT1ce8+fdGrefhMW5V3POTvNHToUERFRSGScSx8cTx8cTw8OBa+OB6+YzFr1iyEZThZvXo1jh8/jh49erg/Z7fbsXDhQrz++utq+sZicVYvdDExMerkT/7QVf3H1ntOLFYLrPE11MfmgiyYy/F7vPtM5LZU9zvk2Rjn6opj4Yvj4Yvj4cGx8MXxCL5yhZPBgwdj48aNPp+76aab0L59ezz00ENFgknolhLDswlbuZcSB94tloiIiMIwnCQlJaFz584+n0tISECtWrWKfD6kq3W89zkp5w6xPtvXcykxERFR0Blrh1jXud3hd+C/8oQMLiUmIiKqfkuJvc2fPx/huX293myrAQVZnrBSjsoJN2EjIiIKPkNVTjw7xGpAVBzgWlpcnr4T7+3rmU2IiIiCz1DhxNNz4vpPBZpiuX09ERFRaBkrnPiHCn0qpxxNsT7b1zObEBERBZ2xwom750QPJ3rlpHwrdgJN8RAREVFwmI14Y+z61EwFwol35cR7ioeIiIiCw1DhxGefE+FeTlyOhljvfU6q9NoRERFR5IUT+IWTijTEeldO2HRCREQUdMYKJ977nFSwIdY7jjCbEBERBZ9x9zmpimkdphMiIqKgM+4+Jz4NsellvgzvQMID/xEREQWfscKJ69yhp4qYivSceD7mUmIiIqLgM2Y4qURDrHcgYeWEiIgo+AwVTsxFpnUqsEOs194m7DkhIiIKPkOFk6rZ54Tb1xMREYWSscIJKr99vXce4T4nREREwWfIcFJkWqeCm7AxmxAREQWfscKJSfNriE1xnhdkAQ57mS7DO5CwckJERBR8xgonrnO7eymxq3JSjuqJ71JiIiIiCjZDrtZxFzysMYAlppxTO97TOownREREwWbsfU58+k4yyl054T4nREREwWescOK/z0kFmmK5lJiIiCi0jBVOAlVOyrlLrG/lhOmEiIgo2Azac+I9reMKJ3np5V9KXLVXj4iIiCJ3tY7XJ8t78D/v1TqsnBAREQWdsbevr1BDLHtOiIiIQslsxBvjO61TzoZYr4/Zc0JERBR8xl+tU+6GWM8PcykxERFR8BkrnKCEaZ28sk3reP8oe06IiIiCLwL2OSnfkYl9w0lVXjsiIiKKvHDiOnd4p5PyhhPv7eu5mJiIiCjoDLnPSeDVOhXZhK1Krx4RERFFbs9JgIbYMveceDfEMp0QEREFm7HCSRVXTphNiIiIgs9Y4QQlbF9fhnDivzqHq3WIiIiCL3KOSlyYC9htJf68fxZhNiEiIgo+Y4UT17ndZ7WOK5yUoXri32PChlgiIqLgM/5RiS1RQFR8mY5M7J9FuJSYiIgo+Iy/WqccTbGsnBAREYWe8VfrlKMptmjPCdMJERFRsBkrnJRaOSl5rxM2xBIREYWe2Yg3pkjFo4xHJvbvMeEmbERERMFnyGkdn9U6PkcmLrkh1v/HGE2IiIiCz5DhpOi0TnIFG2IZT4iIiILNbMQbU3UNsVV57YiIiCjiwknA7evL1RDL7euJiIhCLTKmdcraEOv3c9znhIiIKPiMFU5cLaxFp3X0htiSKyf+P8fCCRERUfAZK5wUuwlb2XaI9c8ibIglIiIK83Dy1ltvoWvXrkhOTlanvn374qeffkK4HVvH4fD7QkxKmXpOilZOGE6IiIjCOpw0btwYzz77LFavXo1Vq1bhoosuwmWXXYbNmzcjvHaIrVhDrH/phNGEiIgo+Kzl+ebRo0f7/P+pp55S1ZRly5ahU6dOCNvt68vYEOv/c5zWISIiCvNw4s1ut+Orr75Cdna2mt4pTn5+vjrpMjKc1QubzaZOVUUuy71DrN3ue9mWOERJJSQvA4UFBZ7mFD8FftfHbndU6XUMJv16V9frX5U4Fr44Hr44Hh4cC18cD49gj4FJK2djxcaNG1UYycvLQ2JiIqZOnYqRI0cW+/2TJ0/GlClTinxefi4+Ph5Vad5hE2bus6BnbQeub+NpPLHaczBqwx3q4++7vQ+HOTrgz5/OB6as8eS18+s6cE0r/wYWIiKiyJOTk4Nx48YhPT1d9Z2GVTgpKCjA/v371ZX7+uuv8f7772PBggXo2LFjmSsnTZo0wcmTJ6v0xkmqe+ST3zBjrwWjutTHK1d39XxRcyDq6brO77tnK5BQJ+BlHDyTi0EvLXL//5pzG+HJy0I/XVXR8ZgzZw6GDh2KqCipG0UujoUvjocvjocHx8IXx8N3LGbNmhW0cFLuaZ3o6Gi0bt1afdyzZ0+sXLkSr776Kt55552A3x8TE6NO/uQPXdV/bHd3r8lU9LKjk4CCTETZc+WXB/x5q9W/bGWu9nfIszHO1RXHwhfHwxfHw4Nj4YvjUQ33OXE4HD6VkVDSW0kCFoPcTbHFr9jhgf+IiIhCr1yVk0mTJmHEiBFo2rQpMjMzVd/I/Pnz8csvvyAcuFfrBGoTKcMusUUO/FeF142IiIjOQjg5fvw4rr/+ehw5cgQpKSlqQzYJJjIfF1absAWqeJRhl1hWToiIiKpZOPnf//6HcFbsPicipvS9Tor8GLMJERFR0EXGsXXKuEusf68KKydERETBZzbijXFUsCHW/8cCVmCIiIjorDJo5aSEaZ0SGmL9f47ZhIiIKPiMFU5QwlLiMvScsCGWiIgo9IwVTiq5WqfIjzGbEBERBZ2xwklZ9jnhJmxERERhzVjhRD8qcYkNscVXTvwxmxAREQWfscJJiT0npe8Qy8oJERFR6BkqnHh2iA3wxZiUcveccCkxERFR8BkqnHh2iC2pITa92J8v+nNMJ0RERMFmrHBSYuXEa7VOMdM1/p9l5YSIiCj4jBVOSuo50RtiNQdgywn48/4/F/ByiIiI6KwyG/HG2AOVPKLiAZOlxKZY9pwQERGFXuRM68gXS9mIzf/nuFqHiIgo+AwZToqdjnFvYR+4csIwQkREFHqRc1TiMuwSW3Rah2GFiIgo2AwVTkyu9TbF9oqUskts0YbYqr1+REREFGnhpKQD/5Vhl9iiS4mZToiIiILNWOHEde5wlNZzUlxDLCsnREREoRY5q3Uq0HPCcEJERBR8kbPPiSh1KTEP/EdERBRqxgonpS0ldjfElq3nhNGEiIgo+AwZTgpL6zkpdodYVk6IiIhCzZDhpPhpndKWEpf8fyIiIjr7DBlObHZHhRpi/TMND/xHREQUfIYKJ5bSKielbMJWtCG2aq8fERERRVg4Kb3nJKl80zpsiSUiIgq6yKqclLchtpjZISIiIjp7DFs5CdgvooeTgsyAyYNLiYmIiELPWOHE6+OAxRN9WkcPKKVuX894QkREFGyGnNYRhYHmZKJiAUt0sX0n/lmE+5wQEREFnyGndSq6hb0eRjw7zZ6FK0lERESRGU5KXbFTTFOssLguiJUTIiKi4DNsOLHby79LrKdy4rwgRhMiIqLgM1w4MZX1+Dr56UW+pLep6JUTFk6IiIiCz1DhRFhdwaIiu8TqP2HRKydMJ0REREFnuHCiVz1KP75OCdM67p6Ts3Y1iYiIKNLCib0iDbGuH2FDLBERUegYdlqn9J6TMjTEMpsQEREFnQHDibmM+5xkFN9z4hoV9pwQEREFn4ErJ45SGmIziq2c6AGH0YSIiCj4IrDnpPgjE+uFElc2Yc8JERFRCBg2nJS6Q2zAY+toPkuJuVqHiIgo+CJvn5MSGmL1n9CXErNwQkREFHzGrZzYy98Q63AFGm7CRkREFDqGCyeV2SFW/xH39vVn60oSERFR5IQTi6WU1Tr6tI4tB7DbAk/ruHtOGE+IiIiCLXJ3iA1QPXE3xLLnhIiIqHqEk2eeeQa9evVCUlIS6tatizFjxmD79u0IJ/oeJbbiek4sUYA1rphw4voWbl9PRERUPcLJggULMGHCBCxbtgxz5syBzWbDsGHDkJ2djWpTOSmhKVYPI6ycEBERhY61PN/8888/+/z/o48+UhWU1atXY8CAAQgHUaXtEKs3xWYfL1o5cZ1ztQ4REVE1CSf+0tPT1Xlqamqx35Ofn69OuowMZ7VCqi5yqir6ZbmyCQpshcVeviU6UZWMCrNPQ/P6nsJCuzo3mTR3JaUqr2Mw6de7ul7/qsSx8MXx8MXx8OBY+OJ4eAR7DExaBcsDDocDl156KdLS0rB48eJiv2/y5MmYMmVKkc9PnToV8fHxqGrvbDVjS5oZY1vZ0adu4Jt2/o5nUSdrC1Y1uwOHUs93f37OIRN+2G9B2xQH/kw3I8qs4YXezsBCREQUyXJycjBu3DhVmEhOdq18DbfKifSebNq0qcRgIiZNmoT77rvPp3LSpEkT1atSlTdOUp30wdSvVxdb0k6iU+cuGHlu44Dfa/l6OrB9C7p3aIVuPUe6P793/m5g/07Uq1MHf6afgslswciRw1Ed6eMxdOhQREVFIZJxLHxxPHxxPDw4Fr44Hr5jMWvWLARLhcLJxIkT8cMPP2DhwoVo3DhwANDFxMSokz/5Q5+NP3aUxXVEYZO5+MuPTVFnlsJsWLy+x+Ra6WPVL0PTqv0d8myNc3XEsfDF8fDF8fDgWPjieARfucKJvFj/4x//wIwZMzB//ny0aNEC4UZfSmy3l9IQW4alxOyHJSIiCvNwIlM50isipR3Z6+To0aPq8ykpKYiLc+0dEu5HJfZeSpwXeCkxd4glIiKqJvucvPXWW6oRZuDAgWjQoIH7NH36dITb9vUl73NSTOVEvwweW4eIiKj6TOtUlwP/lalyUsz29WavaR35nMlVSSEiIqKzL/KOrVPCDrHunhOvMFIN8hgREZGhGC6cuCsnJTbEppS4fb1+GYLZhIiIKLgMF04q0xCr/4Q+rSPYFEtERBRchgsnetWjIg2x7gP/cVqHiIgoZAwYTswVbojVSyesnBAREYVOZDfE2vOBwvyilRPDjQoREVH1YbiXYc9SYkfp4cSveqLnGe9pHVZOiIiIgisyKydmCxCd6Pw4L939aS3gtM7ZuqZEREQUUeGk0F5KqgjQFBu4IZbphIiIKJgMF06sZdm+vqSmWK+AI1g5ISIiCq7I3OfE58jEGUUP/OcVTrgLGxERUXBF5j4nxVRO9Bkc7x1i2RBLREQUXAaunJSwWqeYXWLdlROu1iEiIgoZAx9bp6wNsRlFt6/3bog9C9eRiIiIIiiclLnnJMBqHX1ljlyEnk9YOSEiIgouw25fb69IQ6xrJkiCibt6wmxCREQUVAYMJ+XsOfGunLiSiMlkgj6xw6XEREREwRWZO8QW2xBbtHKiBxYiIiIKDgNXTirSc+I8l2Di6Tk5S1eUiIiIIiOcWMq9Q6zXah1XOpFLcIcTphMiIqKgMl44KetS4tiUEpcSey8nJiIiouAxXDipzA6x+rJhySWehlhWToiIiILJcOGkQjvEugKInkNktY67IZbZhIiIKKgid58TvSFWswO2XL/t67kJGxERUahE7g6x0QmAyezTd6L/hLMh1nk57IclIiIKrsg9to6ED7++E/f29WaZ1tG/kemEiIgomCK3chLg4H/u7etZOSEiIgoZA6/WKaUhNsAusd7b1+uVE7acEBERBZfxwomlIpWTzCLb1+uLidkQS0REFFyRe2ydALvEem9fz8oJERFRaBh2KXGZKiexvpUT7+3r9X1OWDkhIiIKLsOFk4pVTlzhBEUP/MdsQkREFFyGDid6JaTUnpO8dN8qiclTOdGbZImIiCg4DLtap1y7xLqndZz/9T7oH5cSExERBZdhKydl6jvxa4j13r7e1bpSevWFiIiIqlRkV06KNMQ6/yuFE09D7Nm6pkRERBR5lZPStrAv0hCrV05Mrl1OWDkhIiIKNuOFE69+kcLSdol1N8T6bl8vPA2xREREFEyGCyfeB+0rvSG2+MqJXjpxcF6HiIgoqAwXToTVUsaN2PwP/Beg54TRhIiIKLiMGU7KuhGbd0OszOkE2L6eO8QSEREFlyHDid4UW+alxJJKbNnuICI/rbfEMpsQEREFl8ErJ6U0xFpjAXOU8+O8DPcUjonb1xMREYWMIcOJpawH/5ME4tUU670JmwQUwWkdIiKi4DJ05eTp2dsw4Pl5OJNdUKZdYj2bsHl6ThhNiIiIgsvQPScL/zyB/adzsO5gWhmaYiWceFdOnJ9m5YSIiCi4DBlOrBbPRmwiM6+wTAf/C7SUmKUTIiKi4DJkOPHewl5k5NrKtEusvgmbsyGWPSdEREShUO5wsnDhQowePRoNGzZUL+AzZ85EOB/8T2TklRROvBpiXYt7nEuJnbhBLBERUZiHk+zsbHTr1g1vvPEGwn21TtmmdbwaYlF0EzYe+I+IiCi4rOX9gREjRqhTOLOWZ1rHa5dYPYioQ+u4p3XO4hUlIiKiyoeT8srPz1cnXUaG8zg2NptNnaqKflly7jq0jlt6TkGxv8tsTYBFQkhuuvsgfw67HSZXHaWwsLBKr2eweI9HpONY+OJ4+OJ4eHAsfHE8PII9Bmc9nDzzzDOYMmVKkc//+uuviI+Pr/LfN2fOHGSkSdzwVE92HTiM2bMPBvz+5if2oxuAo/v+REamHJ3YhBUrVuDMaUk4Jqxeswb2fdW3fCLjQU4cC18cD18cDw+OhS+OR/Cd9XAyadIk3HfffT6VkyZNmmDYsGFITnZNqVRRqpM70NChQzH16Drszjzj/lpccipGjjwv4M+ZNmYBBz9B/ZoJSLAnArnZ6NunN1bm7MKuzDM455zuGNmlPqob7/GIinJt0R+hOBa+OB6+OB4eHAtfHA/fsZg1axYME05iYmLUyZ/8oc/GH1tdrkUqJ74NscX+roRUdWYuyHQ3xEZZre6mWrPFUq3vlGdrnKsjjoUvjocvjocHx8IXxyP4ImOfkzIuJdbTifeB/7jPCRERUXCVu3KSlZWFnTt3uv+/Z88erFu3DqmpqWjatCnCcbWOVE7ybHb8tOkIBrSpg1qJMUXDSV6Gz4H/3DvEEhERUXhXTlatWoXu3burk5B+Evn48ccfR7hWTnIK7Phy1QHcO309Xv7tzzJtX8/KCRERUTWpnAwcODDsNybzP7aOWLffefC/vSdzAocTWzZM1sIi29eH+U0lIiIyHIP2nBS9WduPyTJh4GhGnu8X9GkdWdXjyFXnEkv04gs3YSMiIgouQ4YT71kdvf9kx/EsdX7MP5xYowFrrPowHs6qivSbeI6tw3RCREQUTIYMJ9JjomtUM06dFxQ63M2xOQWFAasn8Y5sdW7ybohlNiEiIgoqQ4aTLK8D/dX2XpnjcjzDs52+d99JgpbrqZywIZaIiCgkDBlOMvM9+5okxRbt+S2u7yROc1ZOhLsh9uxdTSIiIoqUcJKR66mcJMcW3dWvSN+J68jECV49J56GWMYTIiKiYDJkOMnMK7lyUvy0jiucmGXFjjOdcLUOERFRcBk0nHhVTuLKUDlxTevo4USCiXs1MisnREREQWXIcNKtSQ113iAl1mdaJ8bqvLnHMgNXTuL1yonsEMvKCRERUUgYMpy8NrY7bu7XAtNv7+szrdOlUYo6P5ZeTOUEuUW2rw/33XCJiIiMxpDhpGGNODw+uiOa1or3mdY5x1VROZYZuCE2EdlFtq9n5YSIiCi4DBlOvHlXTvTpHuk58amIuConNbXMANvXM50QEREFk+HDiXfPiV45ybM5kOHVNIuaLdTZBaa1eNr6HiyFuZ4dYomIiCioDB9OUuKclZMoiwmNasQhxTXN47Nip+VAYMA/4dBMGGedhwZfjUL9/L3qS8t2n8LSXadCc+WJiIgikOHDScvaibikawP8fWBrmM0m1E92HuTvqHdTrFRJLnoENzsexXGtBqJPb8e9e27H1ZZ5+G3rMYx/fxn+dB3VuDRvzNuJz5fvO1s3h4iIyPAMH04kkLw+rgfuHdpW/V+aZL2PUuxtqdYJI/KfQW7TCxGt5eP5qPfwatQbaonxz5uOlvq7DpzOwX9+2Y7HZ21Gns1z8EEiIiIqO8OHE39638na/WeKfE1aX08hBacv/wI5Ax6Dw2TBZZYl+CH6Eexav7jUy955whl47A4Nu1wfExERUflEbDhZdyCtyNf0FTxmsxnxFz0A880/w57cBM3Nx/Cf9PtxZu4rJe4Yu/uE58CBOwNUZoiIiKh0ERdOujZOUS0mB8/kqkbXi16cj0+W7vXZ00TfHRZNzoPlzkVYHtsP0SY7ai76F/DFWCDndMDL3u1VLfEPJ/mFdjz70zasCVCxISIioggOJ0mxUWhTN1F9fPe0tara8dxP25CeY/NUTrxXEcfVxKZ+r+NR203I16KAP39C/ut9gX1L1Eoe7xCy56SncrLjmG84+XbNIby9YBee/GHLWb+NRERUNWTXid+2HmcfYZBFXDjxnto57jrGTnaBXVVP3LvB+m1xMvqchpibOBqXF0zBLkcDxOQchePDUVj8v4dww/tL4HD9oPe0zo7jmTiclouvVx9UX1+111kx+fNYFrfEJyKqJn45ZMadU9fhixX7z/rvWn8gTa0O3XQoHZEuQsNJTffHNeKd+55IVUPnvwFb3aRYLHn4Inz6yK2YmPQyvrFfADMceCDqKzyfOxnbdv6J7PxCHPXaO2XvqRzc8dlqPPDVeny1+oC7ATcrvxCH/Y/tc5ZJheeb1QeD+juJiIzgoOs9Z1m3k6iMaSsP4I+dpzBt5dkPQuEuoisn4oW/dEOT1DhVPRED29VBrYToIj8jx9qplRiDR8b0wv22O3FfwR3I1mLQz7IZzb8ajhNrvlPrfVITopEYY1UrdjYcdKbfz5fvx26vKZ/K3slzC+zYf8p5BOXSSGi65aOVuP+r9Viy82Slfi9ROPptyzHc8MEK340ViarIyTznm1XpUzzbZDsK/yp8pIrIcNKufhJGdK6P0d0a4qL2dfHKNd1xzblNMPXW3vjwxl7ug/4F0r9Nbdw5sBUONh2Dr3t+ji2OZoi3nUHzX27C0ph/4Pno9/HXlPVIhCc86CFFt6OS4eSxWZtw4QvzsGJP4MZcb79uOe4OXp8u4+ZwZDzvLdqNBX+ewKx1h0r8PmlYv2faWvcLAFFp8gsdOOOc/Q9OODnjvG/u4lYU8BwVL4JYzCa89dee7v/3bFZTncrqoYvbq3PpKRm0ZAoetk7DX6PmoQFOo0HuzxiS+zPuj7FglaMdlpq74+eCrvhTa6xCj7SbSN9JaaT5aubaQ+jcKAWdGib7BKZFO06oy/lhw2Gc1yK1xMuZse6w++NftxxTO+PWT3HukhtuthzOwJerDuC+YW19jolUXtLj887C3agZH4Vrz2ta7PhKH1DfVrXU/YGqr32uKuLmwxklft9b83dh5rrDSIix4qnLuwTp2lF1JoFEczUhHjqTq55bZGPPs0Gq7fI7xLGMfNUCIFX4SBWRlZOq0rBGHJrVS8WUwuvRR/sfri94CBsaj0VafDNEmezoa9mC+0yf49eYh7Ak5h/4sNZnGGZeiYNHj/tcjjTIyrs670bZl3/7Ew9/uxGXvLYYY974A8cznSXr09kF6o4r5N3imewCPPzNhiLH/zmSnoe9mcAyV3Wldd1Edef3b+qShH68DOVwWWU09KUFuOiF+ZgeYD5ULlv2jtGbgyviiR+24KMle/Hp0opXeGQMn/hxC577eRsmzdioVmEFMunbjfjr/5bjq1UHUK04HMDxrcDhtcCxLTi2ZxO2bd2MI4f2Ope452cBdluJ+/H4Xpw0a59WQXjDwaJ7/4Q7meLUe71KayLc5Aov66vh7Qw38jgrtDtQXRQUOtRzZ3ntPeWZXimwO3Aiy1VGqQKyWKL7v391by9xJD0XhV7Pn7sjvHoSubGsigxqV1dVQk7lmbEQ3XBj/1vQrFkq/jPzN4xN3Y6Ug/MRtX8xGppOo2HWbAyMng3byf9iyzOd8YepB64eezPe2GTFu4v2qIqMTBnJC8astc6Kh4T09QfT8eiMTXjnup7YdiTD5x3jvV+uw/ztJ7B2fxp+uXeA+vzGg+m47I3FcGjOP2+flqkY17sZ7vpiLb5bf9i9lf/ek9kY8eoidbyh3++/EFZL4KwqD5L3F+9x/1+qEtf08q1IPD5rk+qtkemxZ6/soio9p7Ly8eEfezG2d1N10MXSemNW7XMGKZmumjDI+flv1xzEIzM24e3reuKcxjVwy8crVV/Po6M6ug9FoHe5//3zNXBomgpmQl6f1x44g34tfatisuRbnwKQ31VcdSXQE/LHS/aiRnw0xnRv5P68vMOR91Lyjjwjz4bVe8/gwrZ1qu4d1pl9wO75wO55wO4FQK5nOq+e61SUCbBEA9YYwBIFWFzn1hhYYpLRNT8FWJeOf62Lx2e7YqDBjBirWTV+S2+V3AfHvb8Mh9Jy8cM/LlBj9tKcP/HYqA5oUy8J4WLfac+Lh/R15RQUIj7a87SWmWdTL0yJsVb3dOq2I5mqchYbZUE4khf9N+btwgVta6NH07JXdHXyuI62mtWbp8qQKutrv+/ArRe0RIvaCT5fkz2bPlyyFz/+o39Y3R+Ke9ze9skqLNl1Ej/dPUAdBPbe6evU47ZOUgxevuYcteghkP2nfadyDp7JQT3X8dmE3I/kMV/cz5d0nd6cvxNncmyYseaQ+jsf8Ptdu09ko2tjT39kpGE4qaTbBrRUiVrmJhvXjMOFbeuqaYIHx44AMAKadjce/2YVmmWuxU11d+DAiu/Q3HQUHfPXoyPWAx9+iBu02hgcXRvmeSbk76iB/EINL+VmwBJrQscGKdhwKAOOHcDJt5LRrNCBT6KyValRlRt3A3+NMiPrdBwyv/kaSck1cXxPHsaZ85GpxSHbFI8723VHq6RoNDadwKmTWcjOzUNCXCy+WXNQPXHvP52DP3adwoA2tVUZU+bk5YW/cU3ni//crc5KT4cGydh6JEM9aORJX/aMEdJoK8FETF91QPX03Ny/Bf5vxkb8svkY9pzKxhvjeviMm/wOCQbyIi/jJSuKbHbnu4Y1+86oSox8Xvpkcm12vL9oNwa3r4tV+864q0ZymUM61nOvtpIXUl295BhVYZLQtvdkFv67xoJ2vbLRvmENvLNgl3vZeGlTAd5W7zuDyd9vUZv4yTRgk9R49W5s1H8XqRVevz9woaowfbnqIJ67skuRAFdmuWeAPYtcYWQ+cHq379ejEqDFpiAtMwsWzYZoFKqT2eRdLdEAe77z5EciaAv54Me5eEKmKWPisMXUEqsLW2L7/KM4/4KhWHw0Gst2O0OQVJdmrTuMjYfS8W5SDP5zVbcy3QwJOBIYxZvje5yVcvjek57+EQmjcv/s2cw51Sn3oSvfWqJeZF+59hz3u1I5l797eaZyzyb/oCTTr1I5nb3xiHrDoSqrJ7PV/U9exKQKWhx59z3yv4tUQFv0z0GIi654AHt69lb1ZqbQruG5v3T1+drMdYfUc4dc13APJ/JcISexeMcJnM6xYc1+Z/VM3lhOXb5fHRz2+v+twLjeTTHxojYBKydCnh97NvP8//ZPV2PprpN4+689MbhD4LcJ3qHzrmlrkVNgx31D27qbXvWKpX8v1C5WTqgyaifG4F+jOxX7dakgPPGXXgDkBNz+5yUoOL4DA83rMdCyHn1NW9DIdFKdlENADIDz9eeUI0A/vaDhmg1qVNzzzcYl6mywnLxbNuY5zxbLBYvnbocWlYDrbTG4NDoO2YhB4owkbDPHYk+GhlxE45AlDqPPbYXYuEQkrDuJmyx2DKnfHL9lZeJwtgkHVxagQ9N6yEMU3v96A9qZCtA4NRG7T+fjkx+PIef4bqzffAh1YMb6bVnIy2iK2OgowGQBzFbc98VKrDqQgZNZ+fjbha2waIdnJVFmfiG2H81EwxqxqiIi/th50l0R0YPHA1+vx6/3yDshszp6tHh9XHd0bJCsvv+xWZtVyVQu63S+SfUb3JjgDGXex0Mq67toeRLTXwSlgvLoJR3x5I9b3Ndrzb40zNvufBKUapYeTmS667W5O3D/sHbo2DC5yOXm5+XgrU+noad9LfpbNsMkUzaaV8lcxqzxuUDLQUDLgerjtYeycMWbS5AQbcGXd/TFpa8vBhx2fH7jOejTLAkoLADsztOPa/fhzblbcG2PeriuVwMUph/BpvnfoODUHnQ27UGiKRfnYTPOs24GVn0PrAK6WlLxXlQLrHO0worfNmNfvjwjJ2LJrlPqxbKkpnHd7pNZ+Hmz84CZ8nc4t3nJ/VGyi7JUZ+olxeL6vs1U4JcXwJoBVs8V9+LhDB3O3zN/+3F3f5dcrje5XwUjnEiFbuXe03hkZMeAQWHe9uP42yercduAFnhwuLOXTa+Obj+WqcKvTNtKCBBSgVzw4MBiq5xfLN+vXvzk9PPmI7i8e2OfKbAXft2O4Z3qB+xVk7/rPdM3YPkOC5qdk+E+2KlcD/8ApE8th/t+HHKbXvzV87ffciQDJ1z7W3VrnKKq0t+vP6yqFrLFw8u/7cDFnRu4A6BsCSGkEiX3Re+mWAm9C12hR6rSz17pDHAXtqsTsGdOqs+zNzrHVN+80wQHDhw5hoJT+5B7cCN6mbajpjkHsVoeEnb9ic8+XYy9GQ4UmGPRuG4t9GnbGF1bNgSi4gBrnBxrBUbFcBJk0uD67bEGyOh6LpYmx+COBVtxQcwu3N2/Lt6av1O94XXWRDRMGNQa7esnodBux5TvNyMj1war2fmOdHinevh181E1ndC5fhwOHjuO9jWBgc1jMW/dTtSw5KJbUpYqW5oLMoG8DBTkpCFac867mmzZqINs1NHv267HXAfv589Vc9TZOPlHHmtbgX7ysbxWzHV+ixQzP5APJPjI64QegDYAE70rnS/5jsNXrh92zDNBm2/G/2kmPBwjD1Uz7DAj+gMrTGYzVkRr6nMOmGBPN0OLMaF+XAKOFxYgp9CErNeTEJNYA6+aNVgSa2D4kSXA6WTE5UdhveUoMnfHo5UWj7qmOOzfmYvfYvOg2W3o2ayOmqqQJ39Z2u0un0pPh8MGOArVyV5YiDV7TqBRShTWbNyApqZCWGHHqlVHMDfpBNav3Y4WJuf1+2nRUsRknUAjmLBvdwa09PowmS14d/Y6rN1zBg8fP4wvbu+npn+QftBdGbHsWYx77L59P/ZabTEzvQ3WRnXHg3+7BSk1Ut1Tdum70zF3m/PFamjHeujUMAXjezfDJ0v34ck5+/DdhP4wx5ncT86vbDiIHVoLvLEjFuOv7AdHoQ33/xCHXQUmDGtfG+9cnIDDm//A/Hm/oLtlFzqYD6CG/TSGWuS02v2H3u2oj/XZrZDx43yk1KgJxCQB0UnO85hEv/8nYaNXb8cPG46UGk6mrTiAdxY4q0SyKaLeS/LjXRegVZ3A1YJ9rnCiv3hsPpRRJEzKg0p/EY2xWlToKUvfibzTPZ1TUGzJXioz0pQuj+lA108avO//cr2q1Ejg+sdgzztyIdMK//ftRlV5/X79EXc48T5i+oy1h1QwkSwYbTGr6qDsVnpx5/rq6/L7ZZqhV/NUdfunrvD0UE1fecAnnHy+fB/+t3iPCkRz77uwSMD8fdtx/KgCiQnXfbhKXS/9hVTuR1IdrZ3oGxQ3HT574USe59YdTFNvNio6BScBSyp+3uFVD1b3DWuH2z5ZiYMnziDz1BE0NeUiQcvD1K+OoFWKhhgtHy2OnUaqOR/t6iSoacHau7cBqY3Vm4edO0/gKotzvM12DX98OUc9bx9OjcMt/ZvDKo/pvAwgLx2Z6afQeuseTI/ORhJykZyTjaSYHPWxqni+BtwA4Ab9+VPIQ9z5MHeSjzfClzXWGVSi4l3nXh9f8T6QWAfVFcNJkElfyXnNU909C7FWC85tfgE6t6mDPkn78PzP25CZV6iqAy9fdJEsLVJ/pMSj2/Dp/F2A6w313cMHYkniHhVOhg5oif7PzYP5FHBls8b4qvAgRrSrh9zkQxg5ciTMUc4U/+Lsrfhg4Z+45dxUmAuysGDjLoxul4B9R08iIyMDcaZ8jOlUE3VjNfyweheSLDb0bhKLLfuOoV6cA4NaJmH/8ZM4duoM6sdpqBNrx+m0dBUdUmPNiDZr0ByFKLDZ4LDb1Yu4xSTdDMU3zpkljWl2lXd8duYtdJ7VDvQGPf0kGjp/GJCsddpVTZLnnKW/qm9pIHvY+L95kVmKhcBfY4HCE7HI06KgxRQi7gMNGuwqjMiTizeLu+YFzLf6PWLmAYO9n0z2Av/W/y83+WXnh2+qPzSgVpe/UvTmyEWe0FKw2NEZq8zd8I9bb8Vba3LxsasxOG32Xrw2tiYycgtx9TtL1TSXvsLokq5qJHD34DbqEAmbDmVg1vpD7hcleWeov9jJi728KO8/mYVdmSbERpnxrzFdYaoRh4b1OuH1Fa1VFah1TTOS07bhqvrH0Bk7kXhqA1qYj6Gl+Sha4iiw6g+UxWUw46KYWGQhDnlr4qEdqw9TdJyz9OQKf/rJYS/EhSczMC+6EFaTA5YsO6xmByywI+Ft+UM4f0bTHM7Kjbq7aHjCoeGJGE31ZmkWDaZN8oopv13D//Rx95JnjkOaJRZ52xOA9+qrEGWJTsI5x9NgnvOHOlyFClexyfh41Sks3JuLOy/ugT7tmzsDmLxbVe9aY1U1RnpDWtZOwNz7L1QVBhk/6UOz2R1qA0Z9Kundhbvx1z7NfKpAL/yy3V11k6lVeUcvbya8w4n0fIjeLVLRvWlNteLos2X7VDiRatTEqWvVbZ9yaSdYzGZViZRVamm5NjUtd93/lmPrkUx8dFMvNU0kZDpBfkdb13SMVBblMqSPRCfPQd4hSqZFHp25CVazyaffSioO0lD/1eqDqBkfjQva1FbTnZUlY3H/9NVYtfMILmiRiLev6QiTVAJtuUBhnvNkc54fOXUGK3YcRrLVjnMaxKJmtF19rSA/B7mrduLlqGy0SQHS09OQeDIXCchDfEweGnxTiK3WLFisfs9PUgxxFkTwF/lH/mRnXOeSRVz5r7+cAi0qlELTT76fkpEeUkKRw26KQhbiccoeh4SUWtiVpiHKVIg4FKBBvIZY5MNRkKMCT5zJq7FXHwuZCvZXhupmODNpQd5LXV4EU1JSkJ6ejuTkoiXuirLZbJg9e7Z6MY5yvRhXR9IYKlMU7esnq94NnbzLH/TCfPWxlPI3Th7uM4d/yWuL1AuT7uWrusB8cK3PeMxYexD3Tl+vypmqbyS/EF/c1kc9yf3nl+3qCXDqbX3UE9WYN5e4p1TEhEGt1Ds7KWNe/8EKtXFdXJRFlc0v795INZV5v+P5fsNhtKydqF5Ir35nCWrGmrH84UHqhWf4S/NwLD0bozvXxS+bjqjwIqceTZJxa7/muHf6atRJsKpgcyYrD/cPaY3//rZdlUDvuagVhrSvrd65LNt5FFMXblGVoRrmXPxzYH3EO7KBfHm3koG1O/bDkZeOZOQgySTvUnKQYKpYt71Ns6AQFlisUdDMFmQVOF8gY60mxFhMyM4vUEFLTibXudXs/FiqMb79IFKJigea9cP66O7459pUnIpvhUapCWrMZRPAMzkFqi9G/hZy/sJV3dS0hzQH65JjrVj56BBVDRDSYPf8z9vRMCUWvz8wUL3bfGTGRnc/kBh7XlM13SEvincNaoX7XO/WxWMzN7n3wpG/7Re391HX5aq3l2JUmxh00nZh1/rF6FWnEAObxznHWVYH5WcCBc5zm/RKFWQVvb0GJOE2FzFqGrRGcjIOZGrIckSjTaM6SLNZseFYARzSiBwVj2O5JnRpXFM1p0uskhf8z5cfUFE4ylX1Gd65AZqlxqvmeGns1pewyvmA1rXQolYcpi3fox4rf+nREFsOncGuYxmwuB4/cp+zmBzoWD8B6dl5OJmZ6/qapqYZ0vMK1e+Ty5M+kTZ1k3AsMx8r9p5x97BFW0xIjdZwONekwk6UxYJsmwP1U+JxMC1PVQjlRc+hOauc8v8GNeRr+epjuYwRXRqiSWoCYDKjUAOOns5Eaowd8SYbUJgPFErAyA8YNOSk2XJhL8hVb26CyWaJQ745Hsfzo4DoBJwssKrbKH+Fdg1SsOlwpnuc5KTf3r6taiNOTVmbcCKrAKv3p6txzkM0MrR4tG/WCHP35qvwce/oXkhzxOHRnw6gd4cWiEuuiVcWH8foHi2wYMdJFcpmTuiHq95eonrw5EC1M//eTz3Xp+UU4ILn5iErvwBvXt0JI9qlYOO+I3j1p/U4cvIMEs0FmDKiJdrXsjrHtuNlgDW66sbHZsPXX3+NcePGVfnrdyCsnIQZKflfdo7nnYlOuuWl4rJi72kVWvybC6Wf4akft6oSbN2kGLVaZJHfjvUSePR30/r8tQSSc5vXVJc/oG0d9ztyWZUhIUT+17x2Aq519U90aZSizvXOcnnxeuySjj6/R66bfhuk9F07MVa9o5u+9ph6V7Uj3YSkmBp49OoBSKq1Q02rNKsVr6Ym5DodMR/Bviznuxl5d3/hgEFYkdtQNTv2HXCu1ObV1/o0Bdr2HomP/tiD1vWSEN/NWUXQ/Tx7q1pZlBJnRbO4Amw4bVbvxDukAt/f2gW/bz6Af8/eIfUdFT4sVquaKpKemBeu6YF/frsFafkabh/QWl2+dOr/fWBr9QS+Z98ZNS7xic5SycjnfnfPR8uYLt9zGped01DtWyBNvDKe87cdwx+7TmLK6Pa4rm8rrD6QrlYfpWk2TBrQSr0bvvmjldjlapS7tFtD9beW4Ci9LQ1SnKsvrujRSIVLuXw9mIib+7XAZ0v3qblzecd92wUtVUOjHkpkGbm+lDw1RsOt/Zv7jJe8I5Zw0rZeomo21hsdl/2fdDEBy3d3wH1raqN2VjQ+69NbTWVIv4/07EiYknfOg19cgEP5OWgU74C1MBsWWxa617Pi8PET6FzLhGFtk7DtWC7+2JOGQhX4ZBrPGfwcmhnX92+JUd2aAmYLcgtNuOq9Fepv8vb15yEmOhrXvrfS+TiJteKTm87D5W8tdf6t770QEz5foyoC9VPiVD+AvHC8ePU56v711oLdSIgyYf7dvTDhg/lITzuFu/rVR+P4QsxetQ0dok+jS/Pa+GnVDsQjB6mWPMQ4nGX3JFe4jUM+YkyeikKsyYZY2KA6VzJPo52680tTxg7II62p/qeR1exyl5UZE2fLAWQS6G/ez77ysatwcWegGQw5cPpe4Hb9ZzYA50tvWqBn8BNeZT94XQfv/0uL10nnSq/R/r9P3pjrn3O4Ps4q4dXC/2tbfW+WZ2KpbEwBflWBZoUlJg4WV9Uq3xSN/Rl2ZBRakadFIzkxEbmIwqEsTf0/H1HqlKPFYkzvtmjRsB7+u/gI1h8vRDbi0LtdM9w7qgdyEIOL31qnQubvDw5S+4o0LHSoYP/Fj1vw3qI9aJ6o4cMrB+CvLy0qcl1lkcBPN17g/r9Mopxavg/frTuM+GiLswfNdWQU2fSzTp/u6ns+7mVXq+Nkii5/cZoKiHovTPNa8WqaTp43Jl/ayf1cL6sEZeWUNEu/MG8/BnW5AHd8tx6H0mRKugYky42bF41ZE/pVSfUq1BhOqpHbB7TEyn2nA3aFSylZTrKvR5TVhKgA71zlxUTKsnqpeUz3huqOL+8NRnaRiRAP6Q/Y5FedEVKWllVJ+gvxlMs6qaW9xZGwI8ujZQ+TJ3/cqh6Q4tJzGqoGwYdHeN656166pptqOJXVCTI9IU8U/gFIJ79b5o4DkdskTWjjz2uK4/t3YMNpefxacG775jCltkCzdrWx78dMdwiS3oZ/f79FlbBv/UKeYU04r0UtPDC8XZEGRP/+iX6taquVStL7cMeFrVQ4kVVOapmxCbikW0PVpLho12ks25eJTk3S1QG+8mwOdTiF6/o2UyssZKnjh3/sUY17cptrxEWpJzqZMkjLsalKioxZoD4IVSkZ1RETpq5R0w0/bTqqyvMy7TBpZHt1fCXpI5DK263t8os0aEqD6PL/G6wCZ6CGy3Oa1lDjdDKrABe/sgjdmtTAN3f0VSFWVl7J/50rpkw4lCOXLb0CNfDiFX1wzTvLsPSEA+/pL5wAruzRGH/t0xTZ+XZ1/Cm5Ww4e1hVw9RdIFGva3q6aCL/ZG40YixlHUMv5w3nAbbOO4BhSVQWpRt0meOaGWmpPoI3p8koci39c1BoX9miHlqdz8PqKdPRqXxeW2q3QsafD2SB7qBYKHQ6sPFVPlc6vjGmF122ulVE253G3Xr76HIz6eKWaiZJl8jXjzFi35ygSTAXo0TAW/Zol4NGvViAWBarcLufxpgLEIB81rHY8cFETRDnyMG3JDqTnFuCidnXUUdG/Xn1ALSMd0KaWWum18M/jqndENlyct+046iZFqwbW7Hybuo+rsG+y4EROIb5de0RVJKQ3KzkuBjf0a6U+tlicfVrOpnMLbA4ToqKs+GrNYbVqTd7nD2pXW1U/pWDePDVOTSfVSojC39SqQzvirSZs2bIFHTu0V5WTBduPY8nOE+5qoPPcoaqF5zWvgaW7T6rPS/Ab2bkeZq49iCgzcF2fpli77xS2HEqD3WRFrlSZ3KHBea5ChCkak0Z3R4v6tYCoWGiWGNz82SZsPVmAicO6YOz5bfCX99dg7cFMxGsW/GtoR1zQpo5qBj+ak4cGKbF45Zpz0KWl834hjfAynSaVQRm3Wy9ogRYDW6uvpR/dgrlHnVsiXNy6I1C7BeQl/Nt766pApK8+1PtbZAq+Ze14pO9er6bZ9Spm35a11H1dVghec27R6CVvsuQkKxov/M989/4qMsbej1UhVWwhfweRFGNFSlwU3rv+XLVEWX9Doru5f3N8vHSvegNz68er1ONNHq8/3NUft3+yWvXXyLLpWRP7+bxxqY4YTqoRWTa77vFh6g5cnBTXgQylBOdPXjilC33bUecLsnezXCDFLf2UF1MJJ9KMOcov1ARy0/nN1a62soJFmhHlRfD/RnYo9vulj0JOMm8v78wrSp5Atj1xMTR7If73jadjX46fJFrUTlQv1LK9vzwRSXh7cHg797JDeRF597qexa6M8DaofR0VTuSJq0/LWmqsJZior7Wrq1549BUS8kIuLzwSTGSOXvav0ffmkJ+T1UveJABe++4y9bFUt0raU2FU1wZYsaeZ6leR6oq8cMseMVLWl3du0kD58tVdkbvLWYHw572Hgz95spNxkuqLLOGVKShZSqkfRkGfBpR3fvoqB3lnKb0Sv947AO8u2q2WicvfX15svVeMyGEhAt6eLg1VOPlq1UHVEKqHdGns1JeBS9VPmjub1UpQT+p3T1uHwR3qquWaQt5Frnp0iArm4sqejdW7z6W7PRsXHskx4YMlzimt6/o0UyuNpBI1qH1dTL21j7ovytg7dXb/nLzI5/yei00ns1UIlEqhvmPt9ec1Q/SFzu894dihAtGi/FqY1LkDHpy3WP2tr7l6iHrxenLLfERnmHFbtxZ4Y9MuXN2qsQotciC4B/u0AwY5X2DlGljq7MYzPzrLEw+e3w6mga0DPpHrk9s9m2fhoZcWqDGaeNkgfPjVenVwOb3CMvWa3ohpVVv1ssvzxu6Ts9G+90hYoqKQkXAY72xfq75Pxm9gu7pq2rlPs1R0u6A1Xv5zhfrahAtaod6wdpi+Z4Gagl5xqh5+2edZQSdj98mSvfh80R41dS3BQcZUAlqzUy3wSB/nm49lu05h3sl9alpxdN/OsMRG4d0beuPuaWvVSrGHvtmo7gcSsuW57Ku/9fXp4+nXujYW/nMQTmUVqEDh3fQrwU/XxRUK9BWXgcjj/i89GmH20fXqeUia5qV6++glHVQTugSfQMdh00nYkV6wf323GYPa1VGN0/7qJse6t2gQ3ZvVVNc5IcbqbJwPcJn3DmmjViIudh0r7aZ+zVWIeff6nrjyzSUY36dZtQ8mguGkmpFUXRmy+kfCiST2kvZLKMkDw9qpn73x/OZlWlIqIefFq7rhhg9XqNL/G+N7BHzg+atMMPG+DHkHWT8O6No4GTkFDhUe9KrOK9d2Vys+bujrnOKQJxDpr5EX3Fev7a5KqWUhyzPfv/5cNUcsFYnXxnZXL9ZSnj2/dS13WJIXJCnfysoIIWVb703DApHre1XPxqrpUL+eJZHqyZ5TOWq1jLxY642PL1zVFf++rJNqXJ7tOQh3udzUr4U6fbB4D/79wxb37ZDgI7e3aWq8qjRJBcN7GlCmwJ6uwJbxEjL0+6yQMHnvkLYq8P137g4VMOQF07uitfihQUXul973JZk67N+6tnv5ulTzJDRLZUvK+hKcvatKcoiD4sjvuWtwG7UJ4WOjOqpVQS+6li3Lnhk66cuScCIvsLKcVwzpUFc9niVAyou1hBTZT0ZIP8hV5zZWAU7G1puEJnmHLEvUrz63Salj2LJOIj65uTfsmqZexKQiJyu7aidEq9BQ0iqqNvU8zxGdGqXgoYvb4URmnroO8reV+7P0mEmlQMZC9gt57fedan8jIdUrvWlb9g+RaVH508j3/rTxCO78fI2q8OlvVqRvSp+61J/rpEn401t6q72OXp+3U1UDJRTIcdACLTOXv3WgQ3To4UAe9xIIyuuTW85DVl6he3O74kKNN1kSL29yZOyK882dfVVTsvQZSegpzdjzmqq/n0xhyuPhuj7O5wT52869f2Cl9rYJJwwnEeay7o1UZcB7o6Hykheae4Y435WWlew6+v3E/mUKM2eDvGn+5m99YLVafa6DVH/86Us6y0MuU98QTg8rcvImpVypOumVBqkgFLdE1t9zV3ZVxxzyL/MGIi8YH9/USzXUycfe11FCYaCqWnnJNJQsTZXyspTWn7+yq3pS1Pvr5QlZnjy9jwBeETJm0//WF3fIZle7T6kXavk9EhjkJDvCyoo3b2W5j8mLuoQTuV+8dFUXTPhivfq8VALL++QuvTr6ChZ5dy4NyPK31Xu89OqNBA3520sFUX+R0a+vNMpKhUifLm1dL1EF4yt6NA4Y9iU4l4d3ZUquV1mDolSl9OmMXs1qqj6kWRNlnYrTxzedp76uv2BLEJFwoj+2JEj6X3ed7Aci04Rym6UKJofgkL+J3GdlE0dvEiikoii9bz9sPKwqlOXtq5D75APD2qpQUdobgkCk+ljeY37J3/b81oGrgjq5LlJdLCurxYwnxnTG7Z+swsSLWrur5cIowUQwnEQYece59vFhIfndoQom4XQdpFlWDydSDSkreVIvSzDxvp3R1rN3W+Xd6fN/6YZ/fbdJhTn9SVEfX3nxlP00/N/1V4S8g5Z3rfLi5b9xWkVeZIQ0H0u/i1SVhnWshw41HNiRYcF46bKuBCnT6w3E/m7u11z97VvVScA/L26veid0cjiGQ2l57qmxdmGy66pMD0iAlqAZaOM2/6qSNHBf26sJjmXkqRV8Je0KLH+7gW3rqo36ZB8n6YsRj1/SsdjQLi/EUqWpCDWtVYk3ZeGkT8ta2DB5OIyM4YQoiPQneHnHKP0h1ZkEBTnuTiCyE26g3XArE4Y8PR9Vc3lPjnFWD6SSdHNbB3oPGIimtc9eKJCdR6X3RaY2/Y+ELZWHr+/oq6bLpPZU2ePiVKVnruiiVo4MKWV7dp2+U2pZjOhSX4WTlXvPuFeojfeaDqPIxXBCFESyqueui1qjfYNk9+oACj0p/Mj01NlWUp+CBCb/ZuhwID0ppe3uW1Ey9SNbJNgcDlURGXNOw5BXNyk8MJwQBZGUuYtb+kwUaWRqR44NReTPuEcNIiIiomqJ4YSIiIjCCsMJERERhRWGEyIiIgorDCdEREQUVhhOiIiIKKwwnBAREVH1DydvvPEGmjdvjtjYWPTu3RsrVjiPTElEREQU9HAyffp03HffffjXv/6FNWvWoFu3bhg+fDiOH3cenZSIiIgoqOHkpZdewm233YabbroJHTt2xNtvv434+Hh88MEHlboiREREROXevr6goACrV6/GpEmT3J8zm80YMmQIli5dGvBn8vPz1UmXkZHhPthWVRy6XadfVlVeZnXG8fDgWPjiePjieHhwLHxxPDyCPQYmTdPkIJhlcvjwYTRq1AhLlixB376e4yH885//xIIFC7B8+fIiPzN58mRMmTKlyOenTp2qKi5EREQU/nJycjBu3Dikp6cjObnqjjoekgP/SZVFelS8KydNmjTBsGHDqvTGSaqbM2cOhg4diqgoHu2V4+HBsfDF8fDF8fDgWPjiePiOxaxZsxAs5QontWvXhsViwbFjx3w+L/+vX79+wJ+JiYlRJ3/yhz4bf+yzdbnVFcfDg2Phi+Phi+PhwbHwxfEIvnKFk+joaPTs2RNz587FmDFj1OccDof6/8SJE8t0Gfoskt57UpWpTkpOcrm8E3E8vHEsfHE8fHE8PDgWvjgeRcdClKMbJHjTOjJFc8MNN+Dcc8/Feeedh1deeQXZ2dlq9U5ZZGZmqnOZ2iEiIqLqJTMzEykpKeEVTq655hqcOHECjz/+OI4ePYpzzjkHP//8M+rVq1emn2/YsCEOHDiApKQkmEwmVBW9l0Uu+2w36lQHHA8PjoUvjocvjocHx8IXx6PoWGzZskW9jofVap1wHzhJcsHoIq4OOB4eHAtfHA9fHA8PjoUvjkfoxoLH1iEiIqKwwnBCREREYcUw4USWK8vxfgItW45EHA8PjoUvjocvjocHx8IXxyN0Y2GYnhMiIiIyBsNUToiIiMgYGE6IiIgorDCcEBERUVhhOCEiIqKwYphw8sYbb6B58+aIjY1F7969sWLFChjNM888g169eqnddevWrauOb7R9+3af78nLy8OECRNQq1YtJCYm4sorryxyoMb9+/dj1KhRiI+PV5fz4IMPorCwENXZs88+q3YcvueeeyJ2LA4dOoS//vWv6vbGxcWhS5cuWLVqlfvr0vsuOzs3aNBAfX3IkCHYsWOHz2WcPn0a48ePV5ss1ahRA7fccguysrJQndjtdjz22GNo0aKFup2tWrXCE0884XM8ECOPxcKFCzF69Gi1i6c8JmbOnOnz9aq67Rs2bMAFF1ygnnNl59Dnn38e1W085HgxDz30kHqsJCQkqO+5/vrrcfjwYUOOx8JS7hve7rjjDvU9coiakIyFZgDTpk3ToqOjtQ8++EDbvHmzdtttt2k1atTQjh07phnJ8OHDtQ8//FDbtGmTtm7dOm3kyJFa06ZNtaysLPf33HHHHVqTJk20uXPnaqtWrdL69OmjnX/++e6vFxYWap07d9aGDBmirV27Vps9e7ZWu3ZtbdKkSVp1tWLFCq158+Za165dtbvvvjsix+L06dNas2bNtBtvvFFbvny5tnv3bu2XX37Rdu7c6f6eZ599VktJSdFmzpyprV+/Xrv00ku1Fi1aaLm5ue7vufjii7Vu3bppy5Yt0xYtWqS1bt1aGzt2rFadPPXUU1qtWrW0H374QduzZ4/21VdfaYmJidqrr74aEWMh9+NHHnlE+/bbbyWNaTNmzPD5elXc9vT0dK1evXra+PHj1fPRF198ocXFxWnvvPOOVp3GIy0tTT3+p0+frm3btk1bunSpdt5552k9e/b0uQyjjMfsUu4bOvm63N6GDRtqL7/8ckjGwhDhRO5MEyZMcP/fbrerQX3mmWc0Izt+/Li6gy1YsMD9QIuKilJPxrqtW7eq75EHnX7nNJvN2tGjR93f89Zbb2nJyclafn6+Vt1kZmZqbdq00ebMmaNdeOGF7nASaWPx0EMPaf379y/26w6HQ6tfv772n//8x/05GaOYmBj15CG2bNmixmflypXu7/npp580k8mkHTp0SKsuRo0apd18880+n7viiivUk2WkjYX/C1BV3fY333xTq1mzps/jRO6D7dq108JZSS/I3m925Pv27dtn6PFAMWNx8OBBrVGjRipYyBse73ASzLGo9tM6BQUFWL16tSpN6sxms/r/0qVLYWRyjAORmpqqzmUcpEzpPRbt27dH06ZN3WMh51LC9D5Q4/Dhw9VxEzZv3ozqRqZtZFrG+zZH4lh899136kjhV111lZqe6t69O9577z331/fs2aMO1Ok9HnKcDJkC9R4PKdPK5ejk++XxtHz5clQX559/PubOnYs///xT/X/9+vVYvHgxRowYEXFj4a+qbrt8z4ABAxAdHe3z2JFp5jNnzqC6P6/KdIaMQaSNh8PhwHXXXaemtzt16lTk68Eci2ofTk6ePKnmmP2Piiz/lwehUcmdSPor+vXrh86dO6vPye2VO4T+oAo0FnIeaKz0r1Un06ZNw5o1a1Qvjr9IG4vdu3fjrbfeQps2bfDLL7/gzjvvxF133YWPP/7Y5/aU9DiRcwk23qxWqwq/1Wk8Hn74YVx77bUqjEZFRamgJo8VmSePtLHwV1W33UiPHW/SpyY9KGPHjnUf3C6SxuO5555Tt02eOwIJ5lhYK3D9KUwqBps2bVLvCCORHML87rvvxpw5c1TTVaSTsCrvZp5++mn1f3lBlvvH22+/jRtuuAGR5Msvv8Tnn3+OqVOnqnd/69atU+FEmgAjbSyo7KTSevXVV6uGYQn6kWb16tV49dVX1Rs+qRyFWrWvnNSuXRsWi6XIKgz5f/369WFEEydOxA8//IB58+ahcePG7s/L7ZVprrS0tGLHQs4DjZX+ter0QDp+/Dh69OihkrucFixYgP/+97/qY0nqkTIWQlZedOzY0edzHTp0UKuRvG9PSY8TOZcx9SYrl6Q7vzqNh5Sk9eqJTNtJmfree+91V9giaSz8VdVtN9JjxzuY7Nu3T73h0asmkTQeixYtUrdTpr7151QZj/vvv1+thA32WFT7cCKl+549e6o5Zu93kfL/vn37wkgk0UswmTFjBn7//Xe1VNKbjIOUsb3HQub55AVKHws537hxo88dTH8w+r+4hbPBgwer2yHvivWTVA6kdK9/HCljIWR6z39ZufRcNGvWTH0s9xV5YvAeD+mtkXli7/GQMCfBTyf3M3k8SU9CdZGTk6PmwL3JGxi5HZE2Fv6q6rbL98iyVHlR937stGvXDjVr1kR1DCaynPq3335TS/G9Rcp4XHfddWoJsPdzqlQbJezLVHHQx0IzyFJi6Tb/6KOPVDfx7bffrpYSe6/CMII777xTLQGcP3++duTIEfcpJyfHZ/msLC/+/fff1fLZvn37qpP/8tlhw4ap5cg///yzVqdOnWq5fNaf92qdSBsLWWFgtVrVMtodO3Zon3/+uRYfH6999tlnPktI5XExa9YsbcOGDdpll10WcAlp9+7d1XLkxYsXq5VQ1WH5rLcbbrhBrTbQlxLLskhZIv7Pf/4zIsZCVrDJ0ng5yVP8Sy+9pD7WV59UxW2XFT6yXPS6665TqzrkOVjub+G2dLa08SgoKFBLqRs3bqyeA7yfV71XmxhlPDJLuW/481+tE8yxMEQ4Ea+99pp6IZL9TmRpsazBNhq5MwU6yd4nOnmC+fvf/66Wcskd4vLLL1cPNG979+7VRowYodaey5P2/fffr9lsNs1o4STSxuL7779XYUuCevv27bV3333X5+uyjPSxxx5TTxzyPYMHD9a2b9/u8z2nTp1STzSyL4gsqb7pppvUE1p1kpGRoe4H8nwQGxurtWzZUu3t4P1iY+SxmDdvXsDnCQltVXnbZY8UWb4ulyFhUEJPdRsPCa/FPa/KzxltPOaVct8oSzgJ1liY5J+qLA0RERERVUa17zkhIiIiY2E4ISIiorDCcEJERERhheGEiIiIwgrDCREREYUVhhMiIiIKKwwnREREFFYYToiIiCisMJwQERFRWGE4IaJyufHGGzFmzJhQXw0iMjCGEyIiIgorDCdEFNDXX3+NLl26IC4uTh1GfsiQIerw6R9//DFmzZoFk8mkTvPnz1fff+DAAXXo+Ro1aiA1NRWXXXYZ9u7dW6TiMmXKFNSpUwfJycm44447UFBQEMJbSUThyBrqK0BE4efIkSMYO3Ysnn/+eVx++eXIzMzEokWLcP3112P//v3IyMjAhx9+qL5XgojNZsPw4cPRt29f9X1WqxVPPvkkLr74YmzYsAHR0dHqe+fOnYvY2FgVaCS43HTTTSr4PPXUUyG+xUQUThhOiChgOCksLMQVV1yBZs2aqc9JFUVIJSU/Px/169d3f/9nn30Gh8OB999/X1VThIQXqaJIEBk2bJj6nISUDz74APHx8ejUqRP+/e9/q2rME088AbOZhVwicuKzAREV0a1bNwwePFgFkquuugrvvfcezpw5U+z3r1+/Hjt37kRSUhISExPVSSoqeXl52LVrl8/lSjDRSaUlKytLTQkREelYOSGiIiwWC+bMmYMlS5bg119/xWuvvYZHHnkEy5cvD/j9EjB69uyJzz//vMjXpL+EiKg8GE6IKCCZnunXr586Pf7442p6Z8aMGWpqxm63+3xvjx49MH36dNStW1c1upZUYcnNzVVTQ2LZsmWqytKkSZOzfnuIqPrgtA4RFSEVkqeffhqrVq1SDbDffvstTpw4gQ4dOqB58+aqyXX79u04efKkaoYdP348ateurVboSEPsnj17VK/JXXfdhYMHD7ovV1bm3HLLLdiyZQtmz56Nf/3rX5g4cSL7TYjIBysnRFSEVD8WLlyIV155Ra3MkarJiy++iBEjRuDcc89VwUPOZTpn3rx5GDhwoPr+hx56SDXRyuqeRo0aqb4V70qK/L9NmzYYMGCAaqqVFUGTJ08O6W0lovBj0jRNC/WVICLjk31O0tLSMHPmzFBfFSIKc6ylEhERUVhhOCEiIqKwwmkdIiIiCiusnBAREVFYYTghIiKisMJwQkRERGGF4YSIiIjCCsMJERERhRWGEyIiIgorDCdEREQUVhhOiIiICOHk/wGLa4V0zcW5ygAAAABJRU5ErkJggg=="
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "loss:     0.3623\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "  0%|          | 0/4600 [00:00<?, ?it/s]"
      ],
      "application/vnd.jupyter.widget-view+json": {
       "version_major": 2,
       "version_minor": 0,
       "model_id": "bec8f836981c43c48c55ab67e6a24336"
      }
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Early stop at epoch 9 / global_step 414\n",
      "lr: 0.3\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "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"
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "loss:     nan\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "  0%|          | 0/4600 [00:00<?, ?it/s]"
      ],
      "application/vnd.jupyter.widget-view+json": {
       "version_major": 2,
       "version_minor": 0,
       "model_id": "9a1445813601494eb857f0c8a4fcd9ba"
      }
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "lr: 0.001\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "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zBDrchBRUFBAAwcOpG7duon1wsLC6JVXXqFBgwbR1q1bKSIiQqy7ZMkSioqKEsEIBx2jR48WQcurr76q8ysGgEBBYAEAHgOLwsJCuummm6h+/friPs5eMM5g5OXlUa1atRzrf/3112S1WunTTz8VWQzGgQdnLziIGDBggLiPA4zPP/+cYmJiqGXLlvTSSy+JLMjLL79MJhMSqABGgG8yABTRtm1b6tu3rwgmbr31Vvrkk0/o4sWLXtf/+++/af/+/VS5cmWqVKmSWDiTkZubSwcOHHB5XA4qJM5wZGZmimYUADAGZCwAoAiz2UyLFy+mv/76i1JSUuj999+n5557jtauXetxfQ4OOnbsSN98802Rv3E9BQBUHAgsAMAjbtLo0aOHWF544QXRJDJnzhzRnGGxWFzW7dChA33//fdUo0YNUZRZXGYjJydHNKewNWvWiOxGUlJSub8eAAgONIUAQBGcmXjttddow4YNoljz559/prNnz1Lz5s2pQYMGoiBzz549dO7cOVG4OWLECEpMTBQ9Qbh489ChQ6K24vHHH6fjx487Hpd7gNx33320c+dOWrBgAb344os0duxY1FcAGAgyFgBQBGcdVqxYQe+8847oAcLZirfffpsGDx5MnTp1EkED33ITyNKlS6l3795i/QkTJoiCT+5FUrduXVGnoc1g8O+NGzemXr16iQJQ7nkyadIkXV8rAASWoqqqGuDHBAAogsexuHTpEs2dO1fvTQGAcoT8IwAAAAQMAgsAAAAIGDSFAAAAQMAgYwEAAAABg8ACAAAAAgaBBQAAAAQMAgsAAAAIGAQWAAAAEDAILAAAACBgEFgAAABAwCCwAAAAAAqU/wdOOIijOfznegAAAABJRU5ErkJggg=="
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "loss:     0.3808\n"
     ]
    }
   ],
   "execution_count": 12
  },
  {
   "metadata": {},
   "cell_type": "code",
   "outputs": [],
   "execution_count": null,
   "source": "",
   "id": "421a3b345ba9f474"
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
